Jump to content
chrix1982

Modello Di Traffico Stradale

Recommended Posts

Ciao ragazzi...scusate ma ho scoperto da pochissimo (ieri sera) le potenzialità di max script e lo trovo molto interessante nonchè divertente. Io, però, non ci capisco nulla di programmazione e sto tentando di capire qualcosa leggendo sul forum e smanettando un po' con sta roba...ma è un caos totale!

Io vorrei fare una semplicissima simulazione del traffico di un'autostrada e ho bisogno di far fare 3 semplici passaggi, ma non sono in grado di farlo, qualcuno mi pu aiutare visto che ho provato in tutti i modi possibili e immaginabili?

ho una serie di box (automobili) disposti in modo random lungo l'asse x (la strada)

devo dire:

1. prendi ogni singolo box e spostalo in avanti di 1 se non c'è nessuno, cioè se quella coordinata non è occupata da una ltro box

2. se è occupata, allora stai fermo dove sei

stop....devo dirgli 2 cazzate ma non ci riesco...non so come prendere ogni singolo box e fargli fare le operazioni che voglio...posto qui sotto lo script che ho tentato di impostare:

for i = 1 to 50 do (box pos:[(random -200 200),0,0] length:1 width:1 height:0.5

)

e mi creo la mia stringa di box casuali che rappresentano le mia auto

e ora provo a dirgli:

for i = 1 to 50 do (

if(i<10)then

(

zeri="0"

)

else

(

zeri=""

)

execute ("select $Box"+zeri+(i as string))

for obj in selection do(

if obj.pos.x > $box+zeri+(i as string).pos.x or obj.pos.x < $box+zeri+(i as string).pos.x then(

moving = obj.pos.x+1

$box+zeri+(i as string).pos = [moving ,0,0]

)

else

(

stop = obj.pos.x

$box+zeri+(i as string).pos = [stop,0,0]

)

)

AIUTATEMI...E' INTERESSANTISSIMO MA NON CI CAPISCO UNA CIPPA! :wallbash: :wallbash: :wallbash::blink2::wallbash: :wallbash: :wallbash:

Share this post


Link to post
Share on other sites

for i = 1 to 50 do (box pos:[(random -200 200),0,0] length:1 width:1 height:0.5)


select $Box*

sel=$selection

for o=1 to selection.count do(

increment=1

for i=1 to selection.count do(

if((sel[o].position.x+1)==sel[i].position.x) then increment=0

)

sel[o].position.x+=increment

)

ciau

P.S. sta mattina sono un po rinco... non fidarti troppo dello script :wacko:

Share this post


Link to post
Share on other sites

grazie phil....pensavo fosse un plugin esterno...ma poi ho guardato anche nella guida di max e ho trovato qualcosa....

ma questo è molto meglio...

una curiosita....ma questo pdf l'hai trovato in maniera sporadica, o si trovano periodicamente i pdf di questo "3d world"?


Edited by mistral

Share this post


Link to post
Share on other sites

3d world é una rivista che esce ogni mese, ogni tanto i tutorial che presentano sul giornale (credo uno per mese) vengono fatti pdf e messi online in forma gratuita. Solitamente (parer mio) sono un pó banali e un pó generalistici, questo invece é interessante e tratta appunto il crowd che é un pó una bestia rara come risorse in rete.

Ciau :D


Edited by kage_maru

"la spada è l'estensione dell'anima"

Share this post


Link to post
Share on other sites
for i = 1 to 50 do (box pos:[(random -200 200),0,0] length:1 width:1 height:0.5)


select $Box*

sel=$selection

for o=1 to selection.count do(

increment=1

for i=1 to selection.count do(

if((sel[o].position.x+1)==sel[i].position.x) then increment=0

)

sel[o].position.x+=increment

)

ciau

P.S. sta mattina sono un po rinco... non fidarti troppo dello script :wacko:

Innanzio tutto grazie a tutti, siete stai gentilissimi!Grazie ad afterburn per l'indicazione di crowd,anche se mi interessa maggiormente il consiglio di micle dato che la riuscita del problema aveva come obiettivo quello di realizzare un esercizio di

esempio per max script. Ho provato lo script che mi hai indicato, e funziona ma c'è un problema fondamentale: la strada così facendo è infinita e i box continueranno a spostarsi tutti di 1! :unsure:

Dovrei simulare, qundi, la presenza di un incrocio o uno stop, sostanzialmente qualcosa che blocca la prima auto e la fa muovere di 1 solo ed esclusivamente con una probabilità stabilita (che ne so 50%)... :blink2:

Altra domanda: dal momento che non ci capisco nulla, ma l'argomento mi interessa molto, qualcuno saprebbe indicarmi dei libri semplici giusto per iniziare a capire qualcosa di programmazione?Mi sembra di aver capito che per gli script di rhino Visual Basic sia il più indicato. Qual è il linguaggio che torna più utile con maxscript?

:hello:

Share this post


Link to post
Share on other sites
manuali solo su maxscript non so se esistono, comunque qui su treddi trovi ce ne sono di molto utili per cominciare.

cerca nella sezione tutorial

esiste un piccolo ma interessante volume maxscript essential

di autodesk stessa lo puoi reperire presso il sito dell'autodesk sono 230 pagine

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...