Share

AcGiFaceData::setVisibility

C++

virtual ACDBCORE2D_PORT void setVisibility(
    const Adesk::UInt8* vis
);

Description

Sets vis to be the array of face visibility flags used by the AcGiFaceData object. The array must have exactly the same number of elements as there are faces in the mesh or shell it is used with.

The array elements control the visibilities of the mesh or shell faces--the first array element specifies the visibility for the first face, the second element for the second face, etc.

The caller of this function is responsible for allocating and de-allocating the memory for the array. This function accepts a pointer to the array and then uses the array directly--it does not make a copy of the array.

AcGi only uses this array for the duration of the current worldDraw() or viewportDraw() function call, so the memory for this array should be deallocated just before returning from the worldDraw() or viewportDraw() function. It is safe to allocate the array memory on the stack (that is, a local array).

Warning

Prematurely freeing or deleting the array passed into this function terminates AutoCAD.

There are three types of visibility:

kAcGiInvisible The geometry is invisible.
kAcGiVisible The geometry is visible.
kAcGiSilhouette The edge is a silhouette edge.

A silhouette is an edge that is invisible if it is common to two faces and both faces are either facing toward or away from the viewport; otherwise, it's the same as kAcGiVisible. Silhouette visibility is currently only acknowledged during a HIDE command.

Parameters

Parameters Description
vis Input array of visibility flags

Links

AcGiFaceData

Was this information helpful?