2016-04-06 34 views
0

Büyük bir veri kümesi var karedir için:içe Dizi

1479661:-1,1,-1,-898,-769,0.00;-1,2,-1,-96,-1402,0.00;-1,3,-1,117,-1397,0.00;-1,4,-1,-4,-2420,0.00;4,5,-1,5570,4395,0.00;4,6,-1,5570,4395,0.00;4,7,-1,5570,4395,0.00;4,8,-1,5570,4395,0.00;4,9,-1,5570,4395,0.00;4,10,-1,5570,4395,0.00;4,11,-1,5570,4395,0.00;4,12,-1,5570,4395,0.00;4,13,-1,5570,4395,0.00;4,14,-1,5570,4395,0.00;-1,15,-1,913,-3533,0.00;4,16,-1,5570,4395,0.00;4,17,-1,5570,4395,0.00;4,18,-1,5570,4395,0.00;4,19,-1,5570,4395,0.00;4,20,-1,5570,4395,0.00;4,21,-1,5570,4395,0.00;4,22,-1,5570,4395,0.00;4,23,-1,5570,4395,0.00;4,24,-1,5570,4395,0.00;4,25,-1,5570,4395,0.00;4,26,-1,5570,4395,0.00;4,27,-1,5570,4395,0.00;4,28,-1,5570,4395,0.00;4,29,-1,5570,4395,0.00;:117,-1397,7,7.00,A,Dead;: 

ayrılmış dizideki 29 nesneleri vardır; her nesne bir xyz içerir.

1479662:-1,1,-1,-898,-769,0.00;-1,2,-1,-96,-1402,0.00;-1,3,-1,117,-1392,0.00;-1,4,-1,-6,-2419,0.00;4,5,-1,5570,4395,0.00;4,6,-1,5570,4395,0.00;4,7,-1,5570,4395,0.00;4,8,-1,5570,4395,0.00;4,9,-1,5570,4395,0.00;4,10,-1,5570,4395,0.00;4,11,-1,5570,4395,0.00;4,12,-1,5570,4395,0.00;4,13,-1,5570,4395,0.00;4,14,-1,5570,4395,0.00;-1,15,-1,913,-3533,0.00;4,16,-1,5570,4395,0.00;4,17,-1,5570,4395,0.00;4,18,-1,5570,4395,0.00;4,19,-1,5570,4395,0.00;4,20,-1,5570,4395,0.00;4,21,-1,5570,4395,0.00;4,22,-1,5570,4395,0.00;4,23,-1,5570,4395,0.00;4,24,-1,5570,4395,0.00;4,25,-1,5570,4395,0.00;4,26,-1,5570,4395,0.00;4,27,-1,5570,4395,0.00;4,28,-1,5570,4395,0.00;4,29,-1,5570,4395,0.00;:117,-1392,7,7.07,A,Dead;: 

: Sonra 3ds max sonraki ana kareye taşımak ve 29 nesneler için sonraki veri kümesini (xyz) kaydetmek i her nesneye xyz atamak ve bir kareyi kaydetmek nasıl maxfile 29 nesneleri verilerin ikinci

Amaç başına 25 kare bir * .dat dosyada saklanır her nesneye bütün veriler esas xyz corodinates olsun ve ben anladım emin değilim bir anahtar karesi

+1

Peki, şimdiden ne denediniz? – JHN

cevap

0

için pozisyon kayıt etmektir dosya biçiminizi sağlayın, ancak bunun gibi bir şey:

stream = openFile "file.dat" 
data = readLine stream 
objs = filterString data ";" --split text for sepparate lines, each per object 
objData = objs[1] 
for objData in objs do --for all objects 
(
    data = filterString objData ":" --split line for object into name and coords 
    obj = getnodebyname data[1] --select object by name 
    coords = filterString data[2] "," --get all coords as plain array x1, y1, z1, x2, y2, z2 ... 
    keysCount = coords.count/3 --compute keys count 
    with animate on 
    (
     for i = 0 to keysCount-1 do --for all keys 
     (
      at time i obj.pos.controller.x_position = coords[i*3 + 1] as float 
      at time i obj.pos.controller.y_position = coords[i*3 + 2] as float 
      at time i obj.pos.controller.z_position = coords[i*3 + 3] as float --read and set position 
     ) 
    ) 
) 
+0

Teşekkürler kod test etmeye çalışıyorum ve hata no IN undefined alıyorum? –

+0

Bu nesnenin doğru bir şekilde seçildiğini (ve değişken obj içinde saklandığını) mı kastediyorsunuz, ancak .posu çağırmak hatayı neden oluyor? – Artem

+0

Evet, Box001 adlı nesneyi seçtim ve betiği çalıştırdığımda tanımlanmamış olarak yazıyor. –