removed getTightObjectBounds(), unused and possibly buggy.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1808 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
//
|
||||
// $Id: IsoUtil.java,v 1.39 2002/09/18 02:32:57 mdb Exp $
|
||||
// $Id: IsoUtil.java,v 1.40 2002/10/16 20:39:46 ray Exp $
|
||||
|
||||
package com.threerings.miso.scene.util;
|
||||
|
||||
@@ -91,63 +91,6 @@ public class IsoUtil
|
||||
return boundsPoly;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a polygon bounding the given object tile display image,
|
||||
* with the bottom of the polygon shaped to conform to the known
|
||||
* object dimensions. This is currently not used.
|
||||
*
|
||||
* @param model the scene view model.
|
||||
* @param tx the x tile-coordinate of the object tile.
|
||||
* @param ty the y tile-coordinate of the object tile.
|
||||
* @param tile the object tile.
|
||||
*
|
||||
* @return the bounding polygon.
|
||||
*/
|
||||
public static Polygon getTightObjectBounds (
|
||||
IsoSceneViewModel model, SceneObject scobj)
|
||||
{
|
||||
Point tpos = tileToScreen(model, scobj.x, scobj.y, new Point());
|
||||
|
||||
// if the tile has an origin, use that, otherwise compute the
|
||||
// origin based on the tile footprint
|
||||
int tox = scobj.tile.getOriginX(), toy = scobj.tile.getOriginY();
|
||||
if (tox == -1 || toy == -1) {
|
||||
tox = scobj.tile.getBaseWidth() * model.tilehwid;
|
||||
toy = scobj.tile.getHeight();
|
||||
}
|
||||
|
||||
float slope = (float)model.tilehei / (float)model.tilewid;
|
||||
int oox = tpos.x + model.tilehwid, ooy = tpos.y + model.tilehei;
|
||||
int sx = oox - tox, sy = ooy - toy;
|
||||
|
||||
Polygon boundsPoly = new SmartPolygon();
|
||||
int rx = sx, ry = sy;
|
||||
|
||||
// top-left point
|
||||
boundsPoly.addPoint(rx, ry);
|
||||
|
||||
// top-right point
|
||||
rx = sx + scobj.tile.getWidth();
|
||||
boundsPoly.addPoint(rx, ry);
|
||||
|
||||
// bottom-right point
|
||||
ry = ooy - (int)((rx-oox) * slope);
|
||||
boundsPoly.addPoint(rx, ry);
|
||||
|
||||
// bottom-middle point
|
||||
boundsPoly.addPoint(tpos.x + model.tilehwid, tpos.y + model.tilehei);
|
||||
|
||||
// bottom-left point
|
||||
rx = sx;
|
||||
ry = ooy - (int)(tox * slope);
|
||||
boundsPoly.addPoint(rx, ry);
|
||||
|
||||
// top-left point
|
||||
boundsPoly.addPoint(sx, sy);
|
||||
|
||||
return boundsPoly;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a rectangle that encloses the entire object image, with the
|
||||
* upper left set to the appropriate values for rendering the object
|
||||
|
||||
Reference in New Issue
Block a user