protected void setPosition( PositionSettings pos, List<HeightInfo> heights, BasicModelData obj, int heightPos) { HeightInfo height = heights.get(heightPos); obj.setPosition( height.getX() + randomizeDouble(-xRatio, xRatio), randomizeDouble(pos.getMinY(), pos.getMaxY()), height.getZ() + randomizeDouble(-zRatio, zRatio)); correctPosition(obj, pos, heights); }
protected void correctPosition(BasicModelData obj, PositionSettings pos) { if (obj.getX() > pos.getMaxX()) { obj.setX(pos.getMaxX() - randomizeDouble(0, xRatio)); } if (obj.getX() < pos.getMinX()) { obj.setX(pos.getMinX() + randomizeDouble(0, xRatio)); } if (obj.getZ() > pos.getMaxZ()) { obj.setZ(pos.getMaxZ() - randomizeDouble(0, zRatio)); } if (obj.getZ() < pos.getMinZ()) { obj.setZ(pos.getMinZ() + randomizeDouble(0, zRatio)); } }