Selaa lähdekoodia

Add a warning when resetTransform with scale; fix domkit compilation

Yuxiao Mao 5 kuukautta sitten
vanhempi
commit
0b360bbe85
2 muutettua tiedostoa jossa 5 lisäystä ja 1 poistoa
  1. 4 0
      hide/comp/SceneEditor.hx
  2. 1 1
      hrt/impl/DomkitViewer.hx

+ 4 - 0
hide/comp/SceneEditor.hx

@@ -3980,6 +3980,10 @@ class SceneEditor {
 		var newTransform = obj3d.getTransform();
 		var newTransform = obj3d.getTransform();
 		newTransform.invert();
 		newTransform.invert();
 		prevTransform.multiply(prevTransform, newTransform);
 		prevTransform.multiply(prevTransform, newTransform);
+		var scale = prevTransform.getScale();
+		if ( scale.x != scale.y || scale.x != scale.z ) {
+			ide.quickError("Parent scale is not uniform, the resulting transformation may not be accurate.");
+		}
 		for( c in obj3d.children ) {
 		for( c in obj3d.children ) {
 			var c3d = c.to(Object3D);
 			var c3d = c.to(Object3D);
 			if( c3d != null ) {
 			if( c3d != null ) {

+ 1 - 1
hrt/impl/DomkitViewer.hx

@@ -579,7 +579,7 @@ class DomkitViewer extends h2d.Object {
 								inst.dom = obj.dom;
 								inst.dom = obj.dom;
 						});
 						});
 						var prevRoot = currentRoot;
 						var prevRoot = currentRoot;
-						currentRoot = obj.dom.contentRoot;
+						currentRoot = cast obj.dom.contentRoot;
 						for( c in m.children )
 						for( c in m.children )
 							handleErrors(res, () -> addRec(c, interp, obj));
 							handleErrors(res, () -> addRec(c, interp, obj));
 						interp.variables = prev;
 						interp.variables = prev;