2016-12-25 6 views
7

का उपयोग कर घन बनाने के लिए फोल्डिंग आयताकार मैं सतह पर झूठ दिए गए 6 चेहरों के साथ घन बनाने की कोशिश कर रहा हूं, एक चेहरे के साथ एक घन नेट के रूप में। कुछ इस तरह:तीन.जेएस

enter image description here

ऊपर चित्र में, 6 चेहरे, एक चेहरा (नीले एक) चल रहा है।

कोई उन्हें "नेट" बनाने के लिए अपने किनारों के साथ एक साथ घुमा सकता है। एक बार जब उन्हें लगता है कि वे समाप्त हो गए हैं, तो वे "इसे फोल्ड करें" बटन दबा सकते हैं - सभी किनारों को घन बनाने के लिए 9 0 डिग्री चालू कर सकते हैं (या यदि वह उचित स्थिति में नीले चेहरे में शामिल नहीं हुआ है तो घन नहीं हो सकता है।)

नीचे "इसे फोल्ड करें" बटन दबाकर मध्यवर्ती स्थिति है।

enter image description here

के बाद चेहरे जोड़ रहे हैं यह इस तरह करना चाहिए:

enter image description here

इसी एनीमेशन यहां दी गई है: http://www.mathematikus.de/10/

(किसी भी तरह कि लिंक मैक पर काम नहीं कर रहा है)

मुझे यकीन नहीं है कि इस बारे में कैसे जाना है। किसी भी मदद की सराहना की है।

अग्रिम धन्यवाद।

+0

8? एक घन में 6 चेहरे हैं ... :-) – 6502

उत्तर

8

आप वस्तुओं के पदानुक्रम का उपयोग कर सकते हैं।

var obj1 = new THREE.Mesh(...); 
var obj2 = new THREE.Mesh(...); 
obj1.add(obj2); 

इसमें अच्छा example है।

तो, इस सिद्धांत का उपयोग करके, मैंने आपके प्रश्न में दिए गए घन को फोल्ड करने के लिए एनीमेशन बनाया है। बेशक, यह अंतिम समाधान नहीं है, यह सिर्फ एक शुरुआती बिंदु है।

jsfiddle उदाहरण

upd: मैं बेला नवीनीकृत किया है। आप PressMe बटन पर क्लिक करके तह करना शुरू कर सकते हैं। Tween.js के साथ बनाया गया एनिमेशन (foldTheCube() फ़ंक्शन देखें)

+0

आपके उत्तर के लिए बहुत बहुत धन्यवाद। मैं इसे केवल नीली तरफ जंगम/खींचने योग्य बना सकता हूं और एक बार घन बनने के बाद इसे और अधिक एनिमेट नहीं करना चाहिए। – Artiga

+1

उत्तर को स्वीकार करने के रूप में चिह्नित करें, कृपया, यदि यह आपकी आवश्यकताओं के अनुरूप है) वस्तुओं को स्थानांतरित/खींचने के बारे में, [ड्रैगगेबल क्यूब्स] का एक अच्छा उदाहरण है (https://threejs.org/examples/webgl_interactive_draggablecubes.html) – prisoner849

+0

हाँ मैं निश्चित रूप से । :)। मैंने DragControls.js लाइब्रेरी डालने और साइड 5 पर अपनी घटनाओं को जोड़ने की कोशिश की, लेकिन यह काम खत्म कर दिया। – Artiga

संबंधित मुद्दे