Բովանդակություն:
Video: Օգտագործելով բլենդերը Java3D մոդելներ ստեղծելու համար. 3 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:53
Եթե դուք Java ծրագրավորող եք, ապա հավանաբար ինչ -որ պահի ցանկացել եք ծրագրել 3D- ով: Բայց ինչպես? Դե, դուք կարող եք օգտագործել Java3D և դանդաղ մուտքագրել 3D կետի յուրաքանչյուր կետ (փորձեք հավատացեք ինձ, դա վատ գաղափար է), կամ կարող եք օգտագործել Blender (https://blender.org) անվճար և բաց կոդով 3D մոդելավորման ծրագիր, ինչպես նաև սցենար, որը կոչվում է Blend2Java (https://sourceforge.net/projects/blend2java/): Այնուամենայնիվ, Blend2Java- ի վերաբերյալ փաստաթղթերը գրեթե գոյություն չունեն, այդ իսկ պատճառով ես այստեղ նստած գրում եմ սա:
Քայլ 1: Ներբեռնեք ծրագրերը
Ձեզ հարկավոր կլինի Blender (https://blender.org) և Blend2Java (https://sourceforge.net/projects/blend2java/): Դե, երբ դրանք երկուսն էլ ունենաք, սկսեք Blender- ում պատրաստել պարզ մոդել (կամ պարզապես օգտագործել ստանդարտ խորանարդը):
Քայլ 2: Արտահանեք ձեր մոդելը XML- ին
Երբ ունեք մոդել, որը կցանկանայիք օգտագործել Blender- ում բացեք Խմբագրման ռեժիմը և սեղմեք «a» ստեղնը ՝ բոլոր կետերն ընտրելու համար: Ներքեւի վահանակում ընտրեք տեքստի խմբագիր: Բացեք նոր ֆայլ տեքստային խմբագրիչում: Բացեք ձեր ներբեռնած blend2java.py ֆայլը: Գործարկեք: Ձեր օբյեկտը այժմ պետք է լինի. XML- ում, որտեղ դուք այն պահել եք (եթե ունեք և սխալի հաղորդագրությունը թույլ է տալիս խուսափել, դուք ունեք միայն 1 նյութ օբյեկտի համար): Վերանվանել օբյեկտը (այն կունենա տարօրինակ անուն):
Քայլ 3: Ներմուծեք օբյեկտը Java- ին
Shape3D fred = null; փորձեք {XMLDecoder e = new XMLDecoder (նոր BufferedInputStream (նոր FileInputStream ("c: /HandShape3D.xml"))); // ձեր ֆայլի անունն այստեղ fred = (Shape3D) e.readObject (); ե. փակել (); } բռնել (բացառություն ե) {e.printStackTrace (); } ColoringAttributes at = new ColoringAttributes (); Արտաքին տեսք ap = նոր Արտաքին տեսք (); Color3f col = նոր Color3f (1.0f, 0.0f, 1.0f); ColoringAttributes ca = նոր ColoringAttributes (col, ColoringAttributes. NICEST); ap.setColoringAttributes (ca); fred.setAppearance (ap); obj.addChild (fred); տեղադրեք սա ցանկացած 3D կոդի մեջ կամ օգտագործեք ամբողջ ծածկագիրը այստեղ ներմուծեք java.io.*; ներմուծեք java.beans. XMLDecoder; ներմուծեք java.applet. Applet; ներմուծեք java.awt.*; ներմուծեք java: awt.event.*; ներմուծել com.sun.j3d.utils.applet. MainFrame; ներմուծել com.sun.j3d.utils.universe.*; ներմուծել javax.media.j3d.*; ներմուծել javax.vecmath.*; ներմուծել java.applet. Applet; ներմուծում java.awt. BorderLayout; ներմուծում java.awt. Frame; ներմուծել com.sun.j3d.utils.applet. MainFrame; ներմուծել com.sun.j3d.utils.geometry. ColorCube; ներմուծել com.sun: j3d.utils.universe.*; ներմուծել com.sun.j3d.utils.behaviors.mouse.*; ներմուծել javax.media.j3d.*; ներմուծել javax.vecmath.*; ներմուծել java.awt.event.*; ներմուծել java.util. Enumeration; public class MouseBehaviorApp ընդլայնում է Applet {public BranchGroup createSceneGraph () {BranchGroup objRoot = new BranchGroup (); TransformGroup objTransform = նոր TransformGroup (); objTransform.setCapability (TransformGroup. ALLOW_TRANSFORM_WRITE); objTransform.setCapability (TransformGroup. ALLOW_TRANSFORM_READ); objRoot.addChild (objTransform); Shape3D fred = null; փորձեք {XMLDecoder e = new XMLDecoder (նոր BufferedInputStream (նոր FileInputStream ("c: /HandShape3D.xml"))); fred = (Shape3D) e.readObject (); ե. փակել (); } բռնել (բացառություն ե) {e.printStackTrace (); } ColoringAttributes at = new ColoringAttributes (); Արտաքին տեսք ap = նոր Արտաքին տեսք (); Color3f col = նոր Color3f (1.0f, 0.0f, 1.0f); ColoringAttributes ca = նոր ColoringAttributes (col, ColoringAttributes. NICEST); ap.setColoringAttributes (ca); fred.setAppearance (ap); objTransform.addChild (fred); MouseRotate myMouseRotate = նոր MouseRotate (); myMouseRotate.setTransformGroup (objTransform); myMouseRotate.setSchedulingBounds (նոր BoundingSphere ()); objRoot.addChild (myMouseRotate); MouseTranslate myMouseTranslate = նոր MouseTranslate (); myMouseTranslate.setTransformGroup (objTransform); myMouseTranslate.setSchedulingBounds (նոր BoundingSphere ()); objRoot.addChild (myMouseTranslate); MouseZoom myMouseZoom = նոր MouseZoom (); myMouseZoom.setTransformGroup (objTransform); myMouseZoom.setSchedulingBounds (նոր BoundingSphere ()); objRoot.addChild (myMouseZoom); objRoot.compile (); վերադարձ objRoot; } public MouseBehaviorApp () {setLayout (նոր BorderLayout ()); Canvas3D canvas3D = նոր Canvas3D (SimpleUniverse.getPreferredConfiguration ()); ավելացնել («Կենտրոն», կտավ 3D); BranchGroup- ի տեսարան = createSceneGraph (); SimpleUniverse simpleU = նոր SimpleUniverse (canvas3D); simpleU.getViewingPlatform (). setNominalViewingTransform (); simpleU.addBranchGraph (տեսարան); } public static void main (String args) {Frame frame = new MainFrame (new MouseBehaviorApp (), 256, 256); }} օգտագործեք սա ամբողջական ծրագրի համար: Դուք ավարտել եք, և հետո ասում եք «հիմա ինչ»: Ես գաղափար չունեմ: Ես ընդամենը մեկ ամիս առաջ Java սովորեցի: lol!
Խորհուրդ ենք տալիս:
Համակարգչային ջեռուցիչի օգտագործումը `տրանզիստորային տաքացուցիչ ստեղծելու համար. 7 քայլ
Համակարգչային ջեռուցիչի օգտագործումը ՝ տրանզիստորային տաքացուցիչ ստեղծելու համար. Քիչ առաջ ես որոշ Raspberry Pi 3 -եր գնեցի, որոնց հետ խաղալու համար: Քանի որ նրանք գալիս են առանց տաքացուցիչի, որոշների համար շուկայում էի: Ես արագ որոնեցի Google- ը և հանդիպեցի այս Instructable- ին (Raspberry Pi Heat Sink) - սա այն գաղափարից հրաժարվելուց հետո, երբ
Մոդելներ ստեղծելու համար Photogrammetry- ի օգտագործումը. 9 քայլ
Մոդելներ ստեղծելու համար Photogrammetry- ի օգտագործումը. Ով եմ ես: Ես Սեմյուել Կոնկլինն եմ և E.L. Մեյերսի ավագ դպրոց: Վերջին մի քանի ամիսների ընթացքում ես փորձարկել եմ ֆոտոգրամետրիան և հույս ունեմ, որ կօգնեմ ձեզ, եթե որոշեք վերստեղծել այս ապրանքը: Ինձ հետաքրքրում է տեսնել, թե ինչպես են մյուս ընկերները
Ամեն բան, ինչ դուք պետք է իմանաք FPV- ով անօդաչու թռչող սարք ստեղծելու համար. 13 քայլ
Ամեն ինչ, որ դուք պետք է իմանաք FPV- ով անօդաչու սարք ստեղծելու համար. Այսպիսով … անօդաչու թռչող սարքը կարող է լինել և՛ հեշտ, և՛ դժվար, չափազանց թանկ կամ օրինական, դա ճանապարհ է, որը դուք մտնում և զարգանում եք ճանապարհին … ես կսովորեցնեմ ձեզ, թե ինչ է ձեզ հարկավոր, ես չեմ ծածկելու այն ամենը, ինչ կա շուկայում, այլ միայն այն
Օգտագործելով LEDS- ը և AT Tiny- ը ՝ Պիեզոյով թարթող աստղ ստեղծելու համար, խաղում «inkինկ, փայլ, փոքրիկ աստղ»: 6 քայլ
Օգտագործելով LEDS- ը և AT Tiny- ը ՝ պիեզոյով թարթող աստղ ստեղծելու համար, նվագում է «inkինկ, փայլ, փոքրիկ աստղ». Խնդրում ենք տեսնել հաջորդ քայլը սխեմայի և շրջանի ակնարկի համար
ԻՆՉՊԵՍ ՁԵESՆԵԼ Մոդելներ և շենքեր Google Earth- ի համար. 7 քայլ
ԻՆՉՊԵՍ ՁԵESՆԵԼ Մոդելներ և շենքեր Google Earth- ի համար. Երբևէ գնացե՞լ եք google earth և դիտել այդ զով շենքերը: երբևէ ցանկացել է մեկը նախագծել: լավ, ահա քո հնարավորությունը