ソースを参照

fixed terrain scale bug

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@8314 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
bre..ns 14 年 前
コミット
529c907603

+ 1 - 1
jme3-terrain-editor/src/com/jme3/gde/terraineditor/tools/PaintTerrainToolAction.java

@@ -105,7 +105,7 @@ public class PaintTerrainToolAction extends AbstractTerrainToolAction {
         Vector2f uv = new Vector2f(worldLoc.x,-worldLoc.z);
         float scale = ((Node)terrain).getLocalScale().x;
         
-        uv.subtractLocal(((Node)terrain).getLocalTranslation().x*scale, ((Node)terrain).getLocalTranslation().z*scale); // center it on 0,0
+        uv.subtractLocal(((Node)terrain).getWorldTranslation().x*scale, ((Node)terrain).getWorldTranslation().z*scale); // center it on 0,0
         float scaledSize = terrain.getTerrainSize()*scale;
         uv.addLocal(scaledSize/2, scaledSize/2); // shift the bottom left corner up to 0,0
         uv.divideLocal(scaledSize); // get the location as a percentage

+ 5 - 5
jme3-terrain-editor/src/com/jme3/gde/terraineditor/tools/RaiseTerrainToolAction.java

@@ -76,15 +76,15 @@ public class RaiseTerrainToolAction extends AbstractTerrainToolAction {
 
     private void modifyHeight(Terrain terrain, float radius, float heightDir) {
 
-        int radiusStepsX = (int) (radius / ((Node)terrain).getLocalScale().x);
-        int radiusStepsZ = (int) (radius / ((Node)terrain).getLocalScale().z);
+        int radiusStepsX = (int) (radius / ((Node)terrain).getWorldScale().x);
+        int radiusStepsZ = (int) (radius / ((Node)terrain).getWorldScale().z);
 
-        float xStepAmount = ((Node)terrain).getLocalScale().x;
-        float zStepAmount = ((Node)terrain).getLocalScale().z;
+        float xStepAmount = ((Node)terrain).getWorldScale().x;
+        float zStepAmount = ((Node)terrain).getWorldScale().z;
 
         List<Vector2f> locs = new ArrayList<Vector2f>();
         List<Float> heights = new ArrayList<Float>();
-
+        
         for (int z=-radiusStepsZ; z<radiusStepsZ; z++) {
             for (int x=-radiusStepsZ; x<radiusStepsX; x++) {