|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.esri.arcgis.analyst3d.GeneralMultiPatchCreator
public class GeneralMultiPatchCreator
The General MultiPatch Creator component.
GeneralMultipatchCreator is used to create textured multipatches. Once a multipatch geometry is created, it can be used to make a multipatch graphics element to be added to a scene. Alternatively, the multipatch geometry can be saved to a File Geodatabase (*.gdb), a Personal Geodatabase (*.mdb), an ArcSDE Database, or a Shapefile (*.shp). If it's saved to a Shapefile, the texture'd be lost.
Constructor Summary | |
---|---|
GeneralMultiPatchCreator()
Constructs a GeneralMultiPatchCreator using ArcGIS Engine. |
|
GeneralMultiPatchCreator(Object obj)
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts. GeneralMultiPatchCreator theGeneralMultiPatchCreator = (GeneralMultiPatchCreator) obj; |
Method Summary | |
---|---|
void |
clearResources()
Clear resources used to manage the object. |
IGeometry |
createMultiPatch()
Creates the MultiPatch. |
boolean |
equals(Object o)
Compare this object with another |
static String |
getClsid()
getClsid. |
int |
hashCode()
the hashcode for this object |
void |
init(int pointCount,
int partCount,
boolean hasMs,
boolean hasIDs,
boolean hasNormals,
int texturePointCount,
IGeometryMaterialList pGeometryMaterialList)
Initialize the creation of a general multipatch. |
void |
setID(int index,
int iD)
Set vertex Id. |
void |
setM(int index,
double mValue)
Set M at vertex index. |
void |
setMaterialIndex(int patch,
int index)
Set patch material index. |
void |
setNormal(int index,
IVector3D pVector)
Set Normal at vertex index. |
void |
setPatchPointIndex(int patch,
int index)
Set start index of points in patch, end index is start of next patch. |
void |
setPatchPriority(int patch,
int priority)
Set patch priority (>= 0). |
void |
setPatchTexturePointIndex(int part,
int index)
Set texture start index texture points in patch, end index is start of next patch. |
void |
setPatchType(int patch,
int type)
Set patch type. |
void |
setPoint(int index,
IPoint pPoint)
Set Point at vertex index. |
void |
setTexturePoint(int index,
IPoint pPoint)
Set Texture Point at vertex index. |
void |
setTextureWKSPoint(int index,
_WKSPoint pPoint)
Set Texture WKSPoint at vertex index. |
void |
setWKSPointZ(int index,
_WKSPointZ pPoint)
Set WKSPoint at vertex index. |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef |
---|
getJintegraDispatch, release |
Constructor Detail |
---|
public GeneralMultiPatchCreator() throws IOException, UnknownHostException
IOException
- if there are interop problems
UnknownHostException
- if there are interop problemspublic GeneralMultiPatchCreator(Object obj) throws IOException
GeneralMultiPatchCreator theGeneralMultiPatchCreator = (GeneralMultiPatchCreator) obj;
obj
to GeneralMultiPatchCreator
.
obj
- an object returned from ArcGIS Engine or Server
IOException
- if there are interop problemsMethod Detail |
---|
public static String getClsid()
public boolean equals(Object o)
equals
in class Object
public int hashCode()
hashCode
in class Object
public void init(int pointCount, int partCount, boolean hasMs, boolean hasIDs, boolean hasNormals, int texturePointCount, IGeometryMaterialList pGeometryMaterialList) throws IOException, AutomationException
For IGeneralMultipatchCreator interface, part and patch are used interchangeably. So are point and vertex.
When initialize a multipatch, pay close attention to the number of points and texture points. The number of points represents the total point count, whereas the number of texture points represents only those that are involved in deciding texture coordinates. Therefore, the number of points should be equal or greater than the number of texture points.
For a polygonal part, the first and the last point should be at the same coordinate so that the polygon would close. So a square or rectangle polygon should have five points. This applies to rings in a multipatch. Similarly, a triangle fan's first non-center point should repeat itself in closing. Therefore a sqaure-based pyramid should have six points, rather than five.
For the ArcGIS 9.0 newly introduced multipatch part triangles, however, one triangle does not need to have an extra point to close. This means that a triangle has only three points.
init
in interface IGeneralMultiPatchCreator
pointCount
- The pointCount (in)partCount
- The partCount (in)hasMs
- The hasMs (in)hasIDs
- The hasIDs (in)hasNormals
- The hasNormals (in)texturePointCount
- The texturePointCount (in)pGeometryMaterialList
- A reference to a com.esri.arcgis.analyst3d.IGeometryMaterialList (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setPatchPointIndex(int patch, int index) throws IOException, AutomationException
setPatchPointIndex
in interface IGeneralMultiPatchCreator
patch
- The patch (in)index
- The index (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setPatchType(int patch, int type) throws IOException, AutomationException
setPatchType
in interface IGeneralMultiPatchCreator
patch
- The patch (in)type
- A com.esri.arcgis.geometry.esriPatchType constant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setPatchPriority(int patch, int priority) throws IOException, AutomationException
setPatchPriority
in interface IGeneralMultiPatchCreator
patch
- The patch (in)priority
- The priority (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setMaterialIndex(int patch, int index) throws IOException, AutomationException
setMaterialIndex
in interface IGeneralMultiPatchCreator
patch
- The patch (in)index
- The index (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setPoint(int index, IPoint pPoint) throws IOException, AutomationException
setPoint
in interface IGeneralMultiPatchCreator
index
- The index (in)pPoint
- A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setWKSPointZ(int index, _WKSPointZ pPoint) throws IOException, AutomationException
setWKSPointZ
in interface IGeneralMultiPatchCreator
index
- The index (in)pPoint
- A Structure: com.esri.arcgis.system._WKSPointZ (A com.esri.arcgis.system._WKSPointZ COM typedef) (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setM(int index, double mValue) throws IOException, AutomationException
setM
in interface IGeneralMultiPatchCreator
index
- The index (in)mValue
- The mValue (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setNormal(int index, IVector3D pVector) throws IOException, AutomationException
setNormal
in interface IGeneralMultiPatchCreator
index
- The index (in)pVector
- A reference to a com.esri.arcgis.geometry.IVector3D (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setPatchTexturePointIndex(int part, int index) throws IOException, AutomationException
setPatchTexturePointIndex
in interface IGeneralMultiPatchCreator
part
- The part (in)index
- The index (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setTexturePoint(int index, IPoint pPoint) throws IOException, AutomationException
setTexturePoint
in interface IGeneralMultiPatchCreator
index
- The index (in)pPoint
- A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setTextureWKSPoint(int index, _WKSPoint pPoint) throws IOException, AutomationException
setTextureWKSPoint
in interface IGeneralMultiPatchCreator
index
- The index (in)pPoint
- A Structure: com.esri.arcgis.system._WKSPoint (A com.esri.arcgis.system._WKSPoint COM typedef) (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setID(int index, int iD) throws IOException, AutomationException
setID
in interface IGeneralMultiPatchCreator
index
- The index (in)iD
- The iD (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void clearResources() throws IOException, AutomationException
clearResources
in interface IGeneralMultiPatchCreator
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGeometry createMultiPatch() throws IOException, AutomationException
createMultiPatch
in interface IGeneralMultiPatchCreator
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |