2012-08-02 7 views
5

मैं एक div पर निम्नलिखित परिवर्तन प्रदर्शन करने के लिए CSS3 का उपयोग कर रहा रूपांतरण करें:सीएसएस 3 डी कोण अंक

'-webkit-transform' : 'rotateX(45deg) rotateZ(-45deg)'

परिणाम की तरह है:

enter image description here

या इस बेला में के रूप में : http://jsfiddle.net/kteSW/

जैसा कि हम यहां देख सकते हैं, कोण 30deg (sin45 * sin45) के बजाय 36deg है। क्या किसी को इस समस्या का कारण पता है? क्या यह इरादा है या यह एक CSS3 बग है?


अद्यतन:

मैं पहले से ही होने के लिए पैरामीटर सेट करने के:

-webkit-transform-style: preserve-3d; -webkit-perspective: none;

तो सब कुछ एक ओर्थोगोनल तरह से प्रतिपादन किया जाना चाहिए। हालांकि, कोण अभी भी 30 डिग्री नहीं है।

+3

आपकी गणना एक आईएसओमेट्रिक प्रतिपादन मॉडल मान रही है। सीएसएस 3 डी का उपयोग करता है [परिप्रेक्ष्य 3 डी प्रतिपादन] (http://www.w3.org/TR/css3-3d-transforms/#transform-rendering)। –

+0

धन्यवाद रेमंड। क्या सीएसएस 3 डी के आइसोमेट्रिक प्रतिपादन को सक्षम करने का कोई तरीका है? हम आईओएस पर वेबकिट का उपयोग कर रहे हैं। –

+2

ट्रांसफॉर्म संक्रमण नहीं हैं - कृपया उन दोनों को मिश्रण न करें। मैंने आपके लिए टैग संपादित किए हैं। – BoltClock

उत्तर

6

हम जो हासिल करने की कोशिश कर रहे हैं वह आंख और जेड अक्ष के बीच कोण की गणना करना है जब हम (0, 0, 0) (1, 1, 1) से देखते हैं।

तो यह वास्तव में (90 deg) - arctan(1/sqrt(2)) = 54.7356103 deg है, 45deg नहीं है।