VCOM:VectorWorks:Extension:IDTMTIN

From Vectorworks Developer
Jump to navigation Jump to search

.SDK|SDK ..SDK:Types|SDK Types ..VCOM:VCOM (Vectorworks Component Object Model)|VCOM Basics ..VCOM:Class Reference|VCOM Class Reference

Description

namespace VectorWorks::Extension

Provides access to the underlining TIN (Triangular Irregular Netowork) of a Site Model object.

Interface

// ---------------------------------------------------------------------------
// {7ACCEC1A-0387-4b01-A8A2-DE03C6B01747}
static const VWIID IID_DTMTIN = { 0x7accec1a, 0x387, 0x4b01, { 0xa8, 0xa2, 0xde, 0x3, 0xc6, 0xb0, 0x17, 0x47 } };

class DYNAMIC_ATTRIBUTE IDTMTIN : public IVWUnknown
{
public:
	virtual VCOMError VCOM_CALLTYPE GetPointsCount(size_t& outCount) = 0;
	virtual VCOMError VCOM_CALLTYPE GetPoints(STINPt* outArrPoints, size_t& inOutCount) = 0;

	virtual VCOMError VCOM_CALLTYPE GetTrianglesCount(size_t& outCount) = 0;
	virtual VCOMError VCOM_CALLTYPE GetTriangles(STINTri* outArrTris, size_t& inOutCount) = 0;

	virtual VCOMError VCOM_CALLTYPE GetHullPolyPtsCount(size_t& outCount) = 0;
	virtual VCOMError VCOM_CALLTYPE GetHullPolyPts(WorldPt3* outArrPoints, size_t& inOutCount) = 0;
	virtual VCOMError VCOM_CALLTYPE GetRisenHullPoly(Math::IPolyDef* pOutRisenHullPoly) = 0;

	virtual VCOMError VCOM_CALLTYPE GetClipPolyPtsCount(size_t& outCount) = 0;
	virtual VCOMError VCOM_CALLTYPE GetClipPolyPts(WorldPt* outArrPoints, size_t& inOutCount) = 0;

	virtual VCOMError VCOM_CALLTYPE GetVisibleContourPolygons(Math::IPolyDefArray** ppOutArrContourPolygons) = 0;

	virtual VCOMError VCOM_CALLTYPE	GetMinElevation(double& outMinElevation) = 0;

	virtual VCOMError VCOM_CALLTYPE	GetZatXY(WorldPt3& inOutPt) const = 0;
	virtual VCOMError VCOM_CALLTYPE	GetZatXY(WorldPt3* outArrPoints, size_t& inOutCount) const = 0;
	virtual VCOMError VCOM_CALLTYPE	RisePolygon(Math::IPolyDef* poly) = 0;

	virtual VCOMError VCOM_CALLTYPE GetRisenClipPoly(Math::IPolyDef* pOutRisenClipPoly) = 0;

	virtual VCOMError VCOM_CALLTYPE	GetBalancingPadPoly(Math::IPolyDef* inPoly2D, Math::IPolyDef** ppOutPoly3D, double batterSlope) = 0;

	virtual VCOMError VCOM_CALLTYPE GetVisibleContourPolygonAt(size_t contourIndex, Math::IPolyDef* pOutContourPoly2D, double& outContourElevation) = 0;

	virtual VCOMError VCOM_CALLTYPE GetLabelsCount(size_t& outCount) = 0;
	virtual VCOMError VCOM_CALLTYPE GetLabels(STINLabel* outArrLabels, size_t& inOutCount) = 0;
	virtual VCOMError VCOM_CALLTYPE SetLabels(STINLabel* inArrLabels, size_t inCount) = 0;

	virtual VCOMError VCOM_CALLTYPE GetVisibleContoursCount(size_t& outCount) = 0;
	virtual VCOMError VCOM_CALLTYPE IsMajorVisibleContour(size_t contourIndex, bool& outIsMajor) = 0;

	virtual VCOMError VCOM_CALLTYPE	GetBoundedSurfaceInfo(Math::IPolyDef* inBoundPoly2D, double& outProjArea, double& outExisSurfArea, double& outPropSurfArea) = 0;
	virtual VCOMError VCOM_CALLTYPE	GetBoundedVolumeInfo(Math::IPolyDef* inBoundPoly2D, double& outVolumeExisting, double& outVolumeProposed) = 0;
	virtual VCOMError VCOM_CALLTYPE	GetBoundedVolumeCutNFillInfo(Math::IPolyDef* inBoundPoly2D, double& outVolumeCut, double& outVolumeFill) = 0;

	virtual VCOMError VCOM_CALLTYPE GetVisibleContours(TVWArray_TINContour& outArrContours) = 0;
};

Members

GetPointsCount
GetPoints
GetTrianglesCount
GetTriangles
GetHullPolyPtsCount
GetHullPolyPts
GetRisenHullPoly
GetClipPolyPtsCount
GetClipPolyPts
GetVisibleContourPolygons
GetMinElevation
GetZatXY
GetZatXY
RisePolygon
GetBalancingPadPoly
GetVisibleContourPolygonAt
GetLabelsCount
GetLabels
SetLabels
GetVisibleContoursCount
IsMajorVisibleContour
GetBoundedSurfaceInfo
GetBoundedVolumeInfo
GetBoundedVolumeCutNFillInfo
GetVisibleContours

Remarks

There is predefined type for smart VCOM pointer VCOMPtr to IDTMTIN interface:

typedef VCOMPtr<IDTMTIN>  IDTMTINPtr;

Version

Available from: Vectorworks 2010

See Also

VCOM:VCOMPtr

[[VCOM:VCOMPtr]]