![]() |
Public API Reference |
#include <polygon.h>
Inheritance diagram for iPolygon3DStatic:
Public Methods | |
virtual csPolygon3DStatic * | GetPrivateObject ()=0 |
@ UGLY! Used by engine to retrieve internal object structure. More... | |
virtual const char * | GetName () const=0 |
Get the name of this polygon. More... | |
virtual void | SetName (const char *name)=0 |
Set the name of this polygon. More... | |
virtual iThingFactoryState * | GetParent ()=0 |
Get the thing (container) that this polygon belongs to. More... | |
virtual iMaterialHandle * | GetMaterialHandle ()=0 |
Get the material handle for the texture manager. More... | |
virtual void | SetMaterial (iMaterialWrapper *mat)=0 |
Set the material for this polygon. More... | |
virtual iMaterialWrapper * | GetMaterial ()=0 |
Get the material for this polygon. More... | |
virtual int | GetVertexCount ()=0 |
Query number of vertices in this polygon. More... | |
virtual int * | GetVertexIndices ()=0 |
Get the vertex indices array. More... | |
virtual const csVector3 & | GetVertex (int idx) const=0 |
Get the given polygon vertex coordinates in object space. More... | |
virtual int | CreateVertex (int idx)=0 |
Create a polygon vertex given his index in parent polygon set. More... | |
virtual int | CreateVertex (const csVector3 &iVertex)=0 |
Create a polygon vertex and add it to parent object. More... | |
virtual int | GetAlpha ()=0 |
Get the alpha transparency value for this polygon. More... | |
virtual void | SetAlpha (int iAlpha)=0 |
Set the alpha transparency value for this polygon. More... | |
virtual void | CreatePlane (const csVector3 &iOrigin, const csMatrix3 &iMatrix)=0 |
Create a private polygon texture mapping plane. More... | |
virtual csFlags & | GetFlags ()=0 |
Set polygon flags (see CS_POLY_... values above). More... | |
virtual iPortal * | CreateNullPortal ()=0 |
Create a null pointer pointing to no sector. More... | |
virtual iPortal * | CreatePortal (iSector *iTarget)=0 |
Create a portal object pointing to given sector. More... | |
virtual iPortal * | GetPortal ()=0 |
Return the pointer to the portal if there is one. More... | |
virtual void | SetTextureSpace (const csVector3 &p1, const csVector2 &uv1, const csVector3 &p2, const csVector2 &uv2, const csVector3 &p3, const csVector2 &uv3)=0 |
Set the texture space transformation given three vertices and their uv coordinates. More... | |
virtual void | SetTextureSpace (const csVector3 &v_orig, const csVector3 &v1, float l1)=0 |
Calculate the matrix using two vertices (which are preferably on the plane of the polygon and are possibly (but not necessarily) two vertices of the polygon). More... | |
virtual void | SetTextureSpace (const csVector3 &v_orig, const csVector3 &v1, float len1, const csVector3 &v2, float len2)=0 |
Calculate the matrix using 'v1' and 'len1' for the u-axis and 'v2' and 'len2' for the v-axis. More... | |
virtual void | SetTextureSpace (const csMatrix3 &, const csVector3 &)=0 |
The most general function. More... | |
virtual void | GetTextureSpace (csMatrix3 &, csVector3 &)=0 |
Get the texture space information. More... | |
virtual void | EnableTextureMapping (bool enable)=0 |
Disable or enable texture mapping. More... | |
virtual bool | IsTextureMappingEnabled () const=0 |
Check if texture mapping is enabled. More... | |
virtual void | CopyTextureType (iPolygon3DStatic *other_polygon)=0 |
Copy texture type settings from another polygon. More... | |
virtual const csPlane3 & | GetObjectPlane ()=0 |
Get object space plane. More... | |
virtual bool | IsTransparent ()=0 |
Return true if this polygon or the texture it uses is transparent. More... | |
virtual void | SetMixMode (uint m)=0 |
Sets the mode that is used for drawing. More... | |
virtual uint | GetMixMode ()=0 |
Gets the mode that is used for drawing. More... | |
virtual bool | IntersectSegment (const csVector3 &start, const csVector3 &end, csVector3 &isect, float *pr=NULL)=0 |
Intersect object-space segment with this polygon. More... | |
virtual bool | IntersectRay (const csVector3 &start, const csVector3 &end)=0 |
Intersect object-space ray with this polygon. More... | |
virtual bool | IntersectRayNoBackFace (const csVector3 &start, const csVector3 &end)=0 |
Intersect object-space ray with this polygon. More... | |
virtual bool | IntersectRayPlane (const csVector3 &start, const csVector3 &end, csVector3 &isect)=0 |
Intersect object space ray with the plane of this polygon and returns the intersection point. More... | |
virtual bool | PointOnPolygon (const csVector3 &v)=0 |
This is a given point is on (or very nearly on) this polygon. More... |
Definition at line 72 of file polygon.h.
|
Copy texture type settings from another polygon. (this will not copy the actual material that is used, just the information on how to apply that material to the polygon). |
|
Create a null pointer pointing to no sector. It is preferably to set a missing sector callback on the returned portal. |
|
Create a private polygon texture mapping plane.
|
|
Create a portal object pointing to given sector.
|
|
Create a polygon vertex and add it to parent object.
|
|
Create a polygon vertex given his index in parent polygon set.
|
|
Disable or enable texture mapping. Doesn't do anything if nothing has changed. |
|
Get the alpha transparency value for this polygon.
|
|
Set polygon flags (see CS_POLY_... values above).
|
|
Get the material for this polygon.
|
|
Get the material handle for the texture manager.
|
|
Gets the mode that is used for drawing.
|
|
Get the name of this polygon.
|
|
Get object space plane.
|
|
Get the thing (container) that this polygon belongs to. The reference counter on iThingFactoryState is NOT incremented. |
|
Return the pointer to the portal if there is one.
|
|
@ UGLY! Used by engine to retrieve internal object structure. @ |
|
Get the texture space information.
|
|
Get the given polygon vertex coordinates in object space.
|
|
Query number of vertices in this polygon.
|
|
Get the vertex indices array.
|
|
Intersect object-space ray with this polygon. This function is similar to IntersectSegment except that it doesn't keep the lenght of the ray in account. It just tests if the ray intersects with the interior of the polygon. Note that this function also does back-face culling. |
|
Intersect object-space ray with this polygon. This function is similar to IntersectSegment except that it doesn't keep the lenght of the ray in account. It just tests if the ray intersects with the interior of the polygon. Note that this function doesn't do back-face culling. |
|
Intersect object space ray with the plane of this polygon and returns the intersection point. This function does not test if the intersection is inside the polygon. It just returns the intersection with the plane (in or out). This function returns false if the ray is parallel with the plane (i.e. there is no intersection). |
|
Intersect object-space segment with this polygon. Return true if it intersects and the intersection point in object coordinates. |
|
Check if texture mapping is enabled.
|
|
Return true if this polygon or the texture it uses is transparent.
|
|
This is a given point is on (or very nearly on) this polygon. Test happens in object space. |
|
Set the alpha transparency value for this polygon. Not all renderers support all possible values. 0, 25, 50, 75, and 100 will always work but other values may give only the closest possible to one of the above. |
|
Set the material for this polygon. WARNING: if you initially created the polygon with a material without texture then texture mapping will be disabled for this polygon. You need to call EnableTextureMapping(true) again to really enable texture mapping. |
|
Sets the mode that is used for drawing.
|
|
Set the name of this polygon.
|
|
The most general function. With these you provide the matrix directly. |
|
Calculate the matrix using 'v1' and 'len1' for the u-axis and 'v2' and 'len2' for the v-axis.
|
|
Calculate the matrix using two vertices (which are preferably on the plane of the polygon and are possibly (but not necessarily) two vertices of the polygon). The first vertex is seen as the origin and the second as the u-axis of the texture space coordinate system. The v-axis is calculated on the plane of the polygon and orthogonal to the given u-axis. The length of the u-axis and the v-axis is given as the 'len1' parameter. For example, if 'len1' is equal to 2 this means that texture will be tiled exactly two times between vertex 'v_orig' and 'v1'. I hope this explanation is clear since I can't seem to make it any clearer :-) |
|
Set the texture space transformation given three vertices and their uv coordinates.
|