安裝 Steam
登入
|
語言
簡體中文
日本語(日文)
한국어(韓文)
ไทย(泰文)
Български(保加利亞文)
Čeština(捷克文)
Dansk(丹麥文)
Deutsch(德文)
English(英文)
Español - España(西班牙文 - 西班牙)
Español - Latinoamérica(西班牙文 - 拉丁美洲)
Ελληνικά(希臘文)
Français(法文)
Italiano(義大利文)
Bahasa Indonesia(印尼語)
Magyar(匈牙利文)
Nederlands(荷蘭文)
Norsk(挪威文)
Polski(波蘭文)
Português(葡萄牙文 - 葡萄牙)
Português - Brasil(葡萄牙文 - 巴西)
Română(羅馬尼亞文)
Русский(俄文)
Suomi(芬蘭文)
Svenska(瑞典文)
Türkçe(土耳其文)
tiếng Việt(越南文)
Українська(烏克蘭文)
回報翻譯問題
var P1_1 = new Piston( Name: "armKolbenY1_1", Axis: "Y" , Home: 0 , MaxSpeed: 3);
var S1 = new SolidLG( 0, -3, 0 );
var P1_2 = new Piston( Name: "armKolben-Y1_1", Axis: "-Y" , Home: 10 , MaxSpeed: 3 );
var S2 = new SolidLG( 0, 3, 0 );
var P2_1 = new Piston( Name: "armKolbenY2_1", Axis: "Y" ,Home: 0 , MaxSpeed: 3 );
var S3 = new SolidLG( 0, -3, 0 );
var P2_2 = new Piston( Name: "armKolben-Y2_1", Axis: "-Y" , Home: 10 , MaxSpeed: 3 );
var S4 = new SolidLG( 0, 3, 0 );
var P3_1 = new Piston( Name: "armKolbenY3_1", Axis: "Y" , Home: 0, MaxSpeed: 3 );
var S5 = new SolidLG( 0, -4, 0 );
var P3_2 = new Piston( Name: "armKolben-Y3_1", Axis: "-Y" , Home: 10 , MaxSpeed: 3 );
var S6 = new SolidLG( 0, 4, 0 );
var MyArm = (P1_1+S1+P2_1+S3+P3_1+S5)*(P3_2+S2+P2_2+S4+P1_2+S6);
in top view it looks like:
ground-piston-block-piston-block-piston-block-block-block-block-piston-block-piston-block-piston-ground
https://steamuserimages-a.akamaihd.net/ugc/933807031686206225/F9003FD306132B5961C4A6623617D6441D54E7F0/
are the coordinates absolute or relativ when no reference frame is set?
Feel free to meet me on my server :)
84.155.38.245
It look's like you where atempting to make two colums of pistons facing each others to move a central piece. Like a rail. I like that and I believe this should be possible.
I think you where close to the solution but lacked some knoledges about the Solids which would have helped you to simplify the desing process.
Those knoleges are the folowing:
First: retracted Pistons have no solid shape for MArmOS.
Second: Yes, Solids do not need to be split by Pistons. Only Rotors does that. This mean in your case that you can simplify all your solids into a single one (since there are no rotors).
Time for some maths:
Each pistons can extend 10m or 4 LG
So 3 pistons = 4LG *3 = 12 LG
We add 1 LG for the conveyor cube in the midle.
This mean there should be 13 LG separating your pistons.
All of this means your definition should look like this:
var S1 = new SolidLG( 0, -13, 0 );
var P1_1 = new Piston( Name: "armKolbenY1_1", Axis: "Y" , Home: 0 , MaxSpeed: 3);
var P2_1 = new Piston( Name: "armKolbenY2_1", Axis: "Y" ,Home: 0 , MaxSpeed: 3 );
var P3_1 = new Piston( Name: "armKolbenY3_1", Axis: "Y" , Home: 0, MaxSpeed: 3 );
var P1_2 = new Piston( Name: "armKolben-Y1_1", Axis: "-Y" , Home: 10 , MaxSpeed: 3 );
var P2_2 = new Piston( Name: "armKolben-Y2_1", Axis: "-Y" , Home: 10 , MaxSpeed: 3 );
var P3_2 = new Piston( Name: "armKolben-Y3_1", Axis: "-Y" , Home: 10 , MaxSpeed: 3 );
var MyArm = (S1+P1_1+P2_1+P3_1)*(P1_2+P2_2+P3_2);
And it should look like this in game(I like to draw stuff):
█═════¦▓¦█ Full right
|---------------|
13 LG
█═══¦▓¦══█ Centered
█¦▓¦═════█ Full left
caption:
█ fixed point
═ piston's extention
¦▓¦ piston's heads and conveyor cube
Q. "and maybe you can tell me about the "F" in the coordinates from your excavator."
A. About the F thing. It is just a relic of the past from when MArmOS was using Single precision Matrix calculations. Back then, all numerical values needed an F to specify they where float values. Now, it is not needed and I thought I removed them all. This one passed under my radar apparently. It should have no impact thouh.
Q. "are the coordinates absolute or relativ when no reference frame is set?"
A. The reference frame is absolute by default.
This is full right (Home)
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=1325144311 marmos coords
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=1325144545 real position
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=1325144498 real positon2
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=1325144392 piston coords
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=1325144348 piston coords2
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=1325144449 Code
Mid position:
https://steamuserimages-a.akamaihd.net/ugc/933807031691148406/04359829719281E472A2A219DEF3430307E40CCE/
They are still not working parallel and i think the "tension" it produces make the hole thing freak out. I have no idea why the first pistons are not going to zero. its not blocked. via toolbar controlling the pistons directly works well. But even with that, the pistons expand slightly more then 10m. with 6 pistons its about 0.5LG difference. At the moment i have more a clang powered base destroyer then a crane xD
Thanks again!
I think I found a solution to the pistons going too far. I've set the Pistons maximum limit to rougly 9.5 m and it seems to do the job.
I also tried checking the "Share inertial tensors" button and it seems to have got rid of the fantom forces.
I tried it on a floating piece of armor in space and there is no spinning at all (no gyroscopes).
BTW, I'm in SP. Maybe it's diferent in MP.
https://steamuserimages-a.akamaihd.net/ugc/933807335270459668/41E297D11F9F0CF6B064203D4E111B3FC4A990D9/
var P1_1 = new Piston( Name: "armKolbenY1_1", Axis: "Y" , Home: 0 , MaxSpeed: 5);
var P2_1 = new Piston( Name: "armKolbenY2_1", Axis: "Y" ,Home: 0 , MaxSpeed: 5 );
var P3_1 = new Piston( Name: "armKolbenY3_1", Axis: "Y" , Home: 0, MaxSpeed: 5 );
var P1_2 = new Piston( Name: "armKolben-Y1_1", Axis: "-Y" , Home: 10 , MaxSpeed: 5 );
var P2_2 = new Piston( Name: "armKolben-Y2_1", Axis: "-Y" , Home: 10 , MaxSpeed: 5 );
var P3_2 = new Piston( Name: "armKolben-Y3_1", Axis: "-Y" , Home: 10 , MaxSpeed: 5 );
var P1_3 = new Piston( Name: "armKolben-Y1_2", Axis: "-Y" , Home: 10 , MaxSpeed: 5 );
var P2_3 = new Piston( Name: "armKolben-Y2_2", Axis: "-Y" , Home: 10 , MaxSpeed: 5 );
var P3_3 = new Piston( Name: "armKolben-Y3_2", Axis: "-Y" , Home: 10 , MaxSpeed: 5 );
var S2 = new SolidLG( 0, -17 , 5);
var R1 = new Rotor( Name: "armZ1_1", Axis: "Z", OriMode: 0 , Home: 0, MaxSpeed:1 );
var R2_1 = new Rotor( Name: "armY1_1", Axis: "Y", OriMode: 0 , Home: 0, MaxSpeed:1 );
var R2_2 = new Rotor( Name: "armY1_2", Axis: "-Y", OriMode: 0 , Home: 0, MaxSpeed:1 );
var S3 = new SolidLG( 0, 1 , 4 );
var S3_1 = new SolidLG( 0, -1, 4 );
var P4_1 = new Piston( Name: "armKolbenX1_1", Axis: "X" , Home: 0);
var P4_2 = new Piston( Name: "armKolbenX1_2", Axis: "X" , Home: 0);
var R3_1 = new Rotor( Name: "armY2_1", Axis: "-Y", OriMode: 0 , Home: 0, MaxSpeed:1 );
var R3_2 = new Rotor( Name: "armY2_2", Axis: "Y", OriMode: 0 , Home: 0, MaxSpeed:1 );
var S4 = new SolidLG( 3, 0, 0 );
var P5 = new Piston( Name: "armKolbenX1", Axis: "X" , Home: 0);
var R4 = new Rotor( Name: "armX1", Axis: "X", OriMode: 1 , Home: 0 );
var S5 = new SolidLG( 2, 0, 1 );
var R5 = new Rotor( Name: "armZ2", Axis: "-Z", OriMode: 1 , Home: 0 );
var S6_1 = new SolidLG( 0, 2, -2 );
var S6_2 = new SolidLG( 0,- 2, -2 );
var R6 = new Rotor( Name: "armY3_1", Axis: "-Y", OriMode: 1 , Home: 0 );
var R7 = new Rotor( Name: "armY3_2", Axis: "Y", OriMode: 1 , Home: 0 );
var MyArm = (S1+P1_1+P2_1+P3_1)*(P1_2+P2_2+P3_2)*(P1_3+P2_3+P3_3)+S2+R1+R2_1*R2_2+(S3+P4_1+R3_1)*(S3_1+P4_2+R3_2)+S4+P5+R4+S5+R5+(S6_1+R6)*(S6_2+R7);
new UserControl( Arm: MyArm , Speed: 5, Softness: 5);