Skip to main content

ZOS-API interface 2024 R2

ZOSAPI.Editors.NCE.INCECADData Interface Reference

Last update: 17.07.2025

Object properties CAD tab. This interface can be accessed via the INCERow interface. More...

Public Member Functions

int GetSurfaceFace (int surfaceIdx)
 Gets the face assigned to the specified surface.
 
bool SetSurfaceFace (int surfaceIdx, int face)
 Sets the face assigned to the specified surface.
 
string GetSurfaceName (int surfaceIdx)
 Gets the name assigned to the specified surface.
 
bool SetSurfaceName (int surfaceIdx, string name)
 Sets the name assigned to the specified surface.
 
string GetConfigurationName (int configIdx)
 
string GetPartName (int partIdx)
 Gets the name of the specified part.
 
bool GetPartExposed (int partIdx)
 Gets a value indicating if the part is exposed.
 
bool SetPartExposed (int partIdx, bool exposed)
 Sets a value indiciating if the part is exposed.
 
bool SetAllPartsExposed (bool exposed)
 

Properties

bool IsCADAvailable [get]
 
bool HasChordTolerance [get]
 
double ChordTolerance [get, set]
 
bool HasSurfaceTolerance [get]
 
int SurfaceTolerance [get, set]
 
bool HasFaceParameters [get]
 
double FaceAngle [get, set]
 
int FaceMode [get, set]
 
bool HasMergeSurfaces [get]
 
bool MergeSurfaces [get, set]
 
bool HasFaceData [get]
 
int NumberOfSurfaces [get]
 
bool HasPartData [get]
 
int NumberOfConfigurations [get]
 
int CurrentConfiguration [get, set]
 
int NumberOfParts [get]
 
bool HasEdgeLength [get]
 
double MaxEdgeLength [get, set]
 
bool HasTraceMode [get]
 
RayTraceModes TraceMode [get, set]
 

Detailed Description

Object properties CAD tab. This interface can be accessed via the INCERow interface.

Usage (see Example 09 for a full sample)

C#

// Access the CAD settings for object 1
INCECADData Obj1_CAD = Obj1.CADData; // Retrieve CAD data
// Determine if the surface-to-face mappint is available for this object.
// If available, update the mapping based on the total number of surfaces in the system
if (Obj1_CAD.HasFaceData)
{
if (Obj1_CAD.NumberOfSurfaces > 1)
{
// Assign the last face to surface 0. Now, the first and last surfaces will be defined with the same scatter and coating properties
Obj1_CAD.SetSurfaceFace(0, Obj1_CAD.NumberOfSurfaces - 1);
}
}
Object properties CAD tab. This interface can be accessed via the INCERow interface.
Definition: InterfacesNCE.cs:6972
int NumberOfSurfaces
Definition: InterfacesNCE.cs:7010
bool HasFaceData
Definition: InterfacesNCE.cs:7009
bool SetSurfaceFace(int surfaceIdx, int face)
Sets the face assigned to the specified surface.

C++

// Access the CAD settings for object 1
INCECADDataPtr Obj1_CAD = Obj1->CADData; // Retrieve CAD data
// Determine if surface-to-face mapping is available for this object. If yes, update the mapping.
if (Obj1_CAD->HasFaceData)
{
if (Obj1_CAD->NumberOfSurfaces > 1)
{
// Assign last face to surface 0. Now, the first and last surfaces will be defined with the same scatter and coating properties
Obj1_CAD->SetSurfaceFace(0, Obj1_CAD->NumberOfSurfaces - 1);
}
}

Matlab

% Access the CAD settings for object 1
Obj1_CAD = Obj1.CADData; % Retrieve CAD data
% Determine if the surface-to-face mapping is available for this
% object. If yes, update the mapping
if Obj1_CAD.HasFaceData
if Obj1_CAD.NumberOfSurfaces > 1
% Assign last face to surface 0. Now the first and last surface
% will be defined with the same scatter and coating properties.
Obj1_CAD.SetSurfaceFace(0, Obj1_CAD.NumberOfSurfaces-1);
end
end

Python

# Access the CAD settings for object 1
Obj1_CAD = Obj1.CADData
# Determine if the surface-to-face mapping is available for this object. If yes, update the mapping
if Obj1_CAD.HasFaceData:
if Obj1_CAD.NumberOfSurfaces > 1:
# Assign the last face to surface 0. Now, the first and last surfaces will be defined with the same scatter and coating properties.
Obj1_CAD.SetSurfaceFace(0, Obj1_CAD.NumberOfSurfaces-1)
Examples
CSharpStandalone_09_NSC_CAD.cs.

Member Function Documentation

◆ GetConfigurationName()

string ZOSAPI.Editors.NCE.INCECADData.GetConfigurationName ( int  configIdx)

◆ GetPartExposed()

bool ZOSAPI.Editors.NCE.INCECADData.GetPartExposed ( int  partIdx)

Gets a value indicating if the part is exposed.

Parameters
partIdxIndex of the part (0 to NumberOfParts-1).
Returns

◆ GetPartName()

string ZOSAPI.Editors.NCE.INCECADData.GetPartName ( int  partIdx)

Gets the name of the specified part.

Parameters
partIdxIndex of the part (0 to NumberOfParts-1).
Returns

◆ GetSurfaceFace()

int ZOSAPI.Editors.NCE.INCECADData.GetSurfaceFace ( int  surfaceIdx)

Gets the face assigned to the specified surface.

Parameters
surfaceIdxIndex of the surface (0 to NumberOfSurfaces-1).
Returns

◆ GetSurfaceName()

string ZOSAPI.Editors.NCE.INCECADData.GetSurfaceName ( int  surfaceIdx)

Gets the name assigned to the specified surface.

Parameters
surfaceIdxIndex of the surface (0 to NumberOfSurfaces-1).
Returns

◆ SetAllPartsExposed()

bool ZOSAPI.Editors.NCE.INCECADData.SetAllPartsExposed ( bool  exposed)

◆ SetPartExposed()

bool ZOSAPI.Editors.NCE.INCECADData.SetPartExposed ( int  partIdx,
bool  exposed 
)

Sets a value indiciating if the part is exposed.

Parameters
partIdxIndex of the part (0 to NumberOfParts-1).
exposedif set to true [exposed].
Returns

◆ SetSurfaceFace()

bool ZOSAPI.Editors.NCE.INCECADData.SetSurfaceFace ( int  surfaceIdx,
int  face 
)

Sets the face assigned to the specified surface.

Usage (see Example 09 for a full sample)

C#

using (System.IO.StreamWriter POBfile = new System.IO.StreamWriter(TheApplication.ObjectsDir + "\\Polygon Objects\\API_cube_demo.POB", false)) // Open new POB file
{
// Append new POB file with polygon definitions (see help files for syntax information)
POBfile.WriteLine("! A cube" + "\n");
POBfile.WriteLine("! front face vertices" + "\n" + "V 1 -1 -1 0" + "\n" + "V 2 1 -1 0" + "\n" + "V 3 1 1 0" + "\n" + "V 4 -1 1 0" + "\n");
POBfile.WriteLine("! back face vertices" + "\n" + "V 5 -1 -1 2" + "\n" + "V 6 1 -1 2" + "\n" + "V 7 1 1 2" + "\n" + "V 8 -1 1 2" + "\n");
POBfile.WriteLine("! Front" + "\n" + "R 1 2 3 4 0 0" + "\n" + "! Back" + "\n" + "R 5 6 7 8 0 0" + "\n");
POBfile.WriteLine("! Top" + "\n" + "R 4 3 7 8 0 0" + "\n" + "! Bottom" + "\n" + "R 1 2 6 5 0 0" + "\n");
POBfile.WriteLine("! Left Side" + "\n" + "R 1 4 8 5 0 0" + "\n" + "! Right Side" + "\n" + "R 2 3 7 6 0 0");
INCERow Obj2 = NSCE.InsertNewObjectAt(2); // Add new line to NSCE
IObjectTypeSettings Obj2_Type = Obj2.GetObjectTypeSettings(ObjectType.PolygonObject);
Obj2_Type.FileName1 = "API_cube_demo.POB";
Obj2.ChangeType(Obj2_Type);
}
All data for a Non-Sequential Component Editor object. This interface can be accessed via the INonSeq...
Definition: InterfacesNCE.cs:1198
bool ChangeType(IObjectTypeSettings settings)
Changes the current object to the specified type. Use GetObjectTypeSettings to get the relevant setti...
IObjectTypeSettings GetObjectTypeSettings(ObjectType type)
Create the settings for the specified type. Use this method to specify any extra data required to cha...
This interface is used for selecting any files required by a object, and for changing object types....
Definition: InterfacesNCE.cs:1110
ObjectType
All supported non-sequential object types.
Definition: InterfacesNCE.cs:38

C++

fstream POBfile;
string filepath = TheApplication->ObjectsDir + "\\Polygon Objects\\API_cube_demo.POB";
POBfile.open(filepath, fstream::trunc | ios::out);
POBfile << "! A cube" << "\n";
POBfile << "! front face vertices" << "\n" << "V 1 -1 -1 0" << "\n" << "V 2 1 -1 0" << "\n" << "V 3 1 1 0" << "\n" << "V 4 -1 1 0" << "\n";
POBfile << "! back face vertices" << "\n" << "V 5 -1 -1 2" << "\n" << "V 6 1 -1 2" << "\n" << "V 7 1 1 2" << "\n" << "V 8 -1 1 2" << "\n";
POBfile << "! Front" << "\n" << "R 1 2 3 4 0 0" << "\n" << "! Back" << "\n" << "R 5 6 7 8 0 0" << "\n";
POBfile << "! Top" << "\n" << "R 4 3 7 8 0 0" << "\n" << "! Bottom" << "\n" << "R 1 2 6 5 0 0" << "\n";
POBfile << "! Left Side" << "\n" << "R 1 4 8 5 0 0" << "\n" << "! Right Side" << "\n" << "R 2 3 7 6 0 0";
INCERowPtr Obj2 = NSCE->InsertNewObjectAt(2); // Add new line to NSCE
IObjectTypeSettingsPtr Obj2_Type = Obj2->GetObjectTypeSettings(ObjectType_PolygonObject);
Obj2_Type->FileName1 = "API_cube_demo.POB";
Obj2->ChangeType(Obj2_Type);

Matlab

POBfile = fopen(char(System.String.Concat(TheApplication.ObjectsDir, '\\Polygon Objects\\API_cube_demo.POB')), 'w'); % Open new POB file
% Append new POB file with polygon definitions (see help files for syntax information)
fprintf(POBfile, '! A cube\n');
fprintf(POBfile, '! front face vertices\nV 1 -1 -1 0\nV 2 1 -1 0\nV 3 1 1 0\nV 4 -1 1 0\n');
fprintf(POBfile, '! back face vertices\nV 5 -1 -1 2\nV 6 1 -1 2\nV 7 1 1 2\nV 8 -1 1 2\n');
fprintf(POBfile, '! Front\nR 1 2 3 4 0 0\n! Back\nR 5 6 7 8 0 0\n');
fprintf(POBfile, '! Top\nR 4 3 7 8 0 0\n! Bottom\nR 1 2 6 5 0 0\n');
fprintf(POBfile, '! Left Side\nR 1 4 8 5 0 0\n! Right Side\nR 2 3 7 6 0 0');
fclose(POBfile);
Obj2 = NSCE.InsertNewObjectAt(2); % Add new line to NSCE
Obj2_Type = Obj2.GetObjectTypeSettings(ZOSAPI.Editors.NCE.ObjectType.PolygonObject);
Obj2_Type.FileName1 = 'API_cube_demo.POB';
Obj2.ChangeType(Obj2_Type);
Definition: InterfacesNCE.cs:19
Definition: InterfacesEditors.cs:12
The ZOSAPI namespace contains classes for initially connecting to zemax. See also ZOSAPI_Connection,...
Definition: IAS_FieldCurvatureAndDistortion.cs:5

Python

POBfile = open(TheApplication.ObjectsDir + "\\Polygon Objects\\API_cube_demo.POB", "w") # Open new POB file
# Append new POB file with polygon definitions (see help files for syntax information)
POBfile.write("! A cube" '\n')
POBfile.write("! front face vertices" '\n' "V 1 -1 -1 0" '\n' "V 2 1 -1 0" '\n' "V 3 1 1 0" '\n' "V 4 -1 1 0" '\n')
POBfile.write("! back face vertices" '\n' "V 5 -1 -1 2" '\n' "V 6 1 -1 2" '\n' "V 7 1 1 2" '\n' "V 8 -1 1 2" '\n')
POBfile.write("! Front" '\n' "R 1 2 3 4 0 0" '\n' "! Back" '\n' "R 5 6 7 8 0 0" '\n')
POBfile.write("! Top" '\n' "R 4 3 7 8 0 0" '\n' "! Bottom" '\n' "R 1 2 6 5 0 0" '\n')
POBfile.write("! Left Side" '\n' "R 1 4 8 5 0 0" '\n' "! Right Side" '\n' "R 2 3 7 6 0 0")
POBfile.close()
Obj2 = NSCE.InsertNewObjectAt(2) # Add new line to NSCE
Obj2_Type = Obj2.GetObjectTypeSettings(ZOSAPI.Editors.NCE.ObjectType.PolygonObject)
Obj2_Type.FileName1 = "API_cube_demo.POB"
Obj2.ChangeType(Obj2_Type)
Parameters
surfaceIdxIndex of the surface (0 to NumberOfSurfaces-1).
faceThe face.
Returns
Examples
CSharpStandalone_09_NSC_CAD.cs.

◆ SetSurfaceName()

bool ZOSAPI.Editors.NCE.INCECADData.SetSurfaceName ( int  surfaceIdx,
string  name 
)

Sets the name assigned to the specified surface.

Parameters
surfaceIdxIndex of the surface (0 to NumberOfSurfaces-1).
nameThe new surface name.
Returns

Property Documentation

◆ ChordTolerance

double ZOSAPI.Editors.NCE.INCECADData.ChordTolerance
getset

◆ CurrentConfiguration

int ZOSAPI.Editors.NCE.INCECADData.CurrentConfiguration
getset

◆ FaceAngle

double ZOSAPI.Editors.NCE.INCECADData.FaceAngle
getset

◆ FaceMode

int ZOSAPI.Editors.NCE.INCECADData.FaceMode
getset

Usage (see Example 09 for a full sample)

C#

using (System.IO.StreamWriter POBfile = new System.IO.StreamWriter(TheApplication.ObjectsDir + "\\Polygon Objects\\API_cube_demo.POB", false)) // Open new POB file
{
// Append new POB file with polygon definitions (see help files for syntax information)
POBfile.WriteLine("! A cube" + "\n");
POBfile.WriteLine("! front face vertices" + "\n" + "V 1 -1 -1 0" + "\n" + "V 2 1 -1 0" + "\n" + "V 3 1 1 0" + "\n" + "V 4 -1 1 0" + "\n");
POBfile.WriteLine("! back face vertices" + "\n" + "V 5 -1 -1 2" + "\n" + "V 6 1 -1 2" + "\n" + "V 7 1 1 2" + "\n" + "V 8 -1 1 2" + "\n");
POBfile.WriteLine("! Front" + "\n" + "R 1 2 3 4 0 0" + "\n" + "! Back" + "\n" + "R 5 6 7 8 0 0" + "\n");
POBfile.WriteLine("! Top" + "\n" + "R 4 3 7 8 0 0" + "\n" + "! Bottom" + "\n" + "R 1 2 6 5 0 0" + "\n");
POBfile.WriteLine("! Left Side" + "\n" + "R 1 4 8 5 0 0" + "\n" + "! Right Side" + "\n" + "R 2 3 7 6 0 0");
INCERow Obj2 = NSCE.InsertNewObjectAt(2); // Add new line to NSCE
IObjectTypeSettings Obj2_Type = Obj2.GetObjectTypeSettings(ObjectType.PolygonObject);
Obj2_Type.FileName1 = "API_cube_demo.POB";
Obj2.ChangeType(Obj2_Type);
}

C++

fstream POBfile;
string filepath = TheApplication->ObjectsDir + "\\Polygon Objects\\API_cube_demo.POB";
POBfile.open(filepath, fstream::trunc | ios::out);
POBfile << "! A cube" << "\n";
POBfile << "! front face vertices" << "\n" << "V 1 -1 -1 0" << "\n" << "V 2 1 -1 0" << "\n" << "V 3 1 1 0" << "\n" << "V 4 -1 1 0" << "\n";
POBfile << "! back face vertices" << "\n" << "V 5 -1 -1 2" << "\n" << "V 6 1 -1 2" << "\n" << "V 7 1 1 2" << "\n" << "V 8 -1 1 2" << "\n";
POBfile << "! Front" << "\n" << "R 1 2 3 4 0 0" << "\n" << "! Back" << "\n" << "R 5 6 7 8 0 0" << "\n";
POBfile << "! Top" << "\n" << "R 4 3 7 8 0 0" << "\n" << "! Bottom" << "\n" << "R 1 2 6 5 0 0" << "\n";
POBfile << "! Left Side" << "\n" << "R 1 4 8 5 0 0" << "\n" << "! Right Side" << "\n" << "R 2 3 7 6 0 0";
INCERowPtr Obj2 = NSCE->InsertNewObjectAt(2); // Add new line to NSCE
IObjectTypeSettingsPtr Obj2_Type = Obj2->GetObjectTypeSettings(ObjectType_PolygonObject);
Obj2_Type->FileName1 = "API_cube_demo.POB";
Obj2->ChangeType(Obj2_Type);

Matlab

POBfile = fopen(char(System.String.Concat(TheApplication.ObjectsDir, '\\Polygon Objects\\API_cube_demo.POB')), 'w'); % Open new POB file
% Append new POB file with polygon definitions (see help files for syntax information)
fprintf(POBfile, '! A cube\n');
fprintf(POBfile, '! front face vertices\nV 1 -1 -1 0\nV 2 1 -1 0\nV 3 1 1 0\nV 4 -1 1 0\n');
fprintf(POBfile, '! back face vertices\nV 5 -1 -1 2\nV 6 1 -1 2\nV 7 1 1 2\nV 8 -1 1 2\n');
fprintf(POBfile, '! Front\nR 1 2 3 4 0 0\n! Back\nR 5 6 7 8 0 0\n');
fprintf(POBfile, '! Top\nR 4 3 7 8 0 0\n! Bottom\nR 1 2 6 5 0 0\n');
fprintf(POBfile, '! Left Side\nR 1 4 8 5 0 0\n! Right Side\nR 2 3 7 6 0 0');
fclose(POBfile);
Obj2 = NSCE.InsertNewObjectAt(2); % Add new line to NSCE
Obj2_Type = Obj2.GetObjectTypeSettings(ZOSAPI.Editors.NCE.ObjectType.PolygonObject);
Obj2_Type.FileName1 = 'API_cube_demo.POB';
Obj2.ChangeType(Obj2_Type);

Python

POBfile = open(TheApplication.ObjectsDir + "\\Polygon Objects\\API_cube_demo.POB", "w") # Open new POB file
# Append new POB file with polygon definitions (see help files for syntax information)
POBfile.write("! A cube" '\n')
POBfile.write("! front face vertices" '\n' "V 1 -1 -1 0" '\n' "V 2 1 -1 0" '\n' "V 3 1 1 0" '\n' "V 4 -1 1 0" '\n')
POBfile.write("! back face vertices" '\n' "V 5 -1 -1 2" '\n' "V 6 1 -1 2" '\n' "V 7 1 1 2" '\n' "V 8 -1 1 2" '\n')
POBfile.write("! Front" '\n' "R 1 2 3 4 0 0" '\n' "! Back" '\n' "R 5 6 7 8 0 0" '\n')
POBfile.write("! Top" '\n' "R 4 3 7 8 0 0" '\n' "! Bottom" '\n' "R 1 2 6 5 0 0" '\n')
POBfile.write("! Left Side" '\n' "R 1 4 8 5 0 0" '\n' "! Right Side" '\n' "R 2 3 7 6 0 0")
POBfile.close()
Obj2 = NSCE.InsertNewObjectAt(2) # Add new line to NSCE
Obj2_Type = Obj2.GetObjectTypeSettings(ZOSAPI.Editors.NCE.ObjectType.PolygonObject)
Obj2_Type.FileName1 = "API_cube_demo.POB"
Obj2.ChangeType(Obj2_Type)

◆ HasChordTolerance

bool ZOSAPI.Editors.NCE.INCECADData.HasChordTolerance
get

◆ HasEdgeLength

bool ZOSAPI.Editors.NCE.INCECADData.HasEdgeLength
get

◆ HasFaceData

bool ZOSAPI.Editors.NCE.INCECADData.HasFaceData
get

Usage (see Example 09 for a full sample)

C#

using (System.IO.StreamWriter POBfile = new System.IO.StreamWriter(TheApplication.ObjectsDir + "\\Polygon Objects\\API_cube_demo.POB", false)) // Open new POB file
{
// Append new POB file with polygon definitions (see help files for syntax information)
POBfile.WriteLine("! A cube" + "\n");
POBfile.WriteLine("! front face vertices" + "\n" + "V 1 -1 -1 0" + "\n" + "V 2 1 -1 0" + "\n" + "V 3 1 1 0" + "\n" + "V 4 -1 1 0" + "\n");
POBfile.WriteLine("! back face vertices" + "\n" + "V 5 -1 -1 2" + "\n" + "V 6 1 -1 2" + "\n" + "V 7 1 1 2" + "\n" + "V 8 -1 1 2" + "\n");
POBfile.WriteLine("! Front" + "\n" + "R 1 2 3 4 0 0" + "\n" + "! Back" + "\n" + "R 5 6 7 8 0 0" + "\n");
POBfile.WriteLine("! Top" + "\n" + "R 4 3 7 8 0 0" + "\n" + "! Bottom" + "\n" + "R 1 2 6 5 0 0" + "\n");
POBfile.WriteLine("! Left Side" + "\n" + "R 1 4 8 5 0 0" + "\n" + "! Right Side" + "\n" + "R 2 3 7 6 0 0");
INCERow Obj2 = NSCE.InsertNewObjectAt(2); // Add new line to NSCE
IObjectTypeSettings Obj2_Type = Obj2.GetObjectTypeSettings(ObjectType.PolygonObject);
Obj2_Type.FileName1 = "API_cube_demo.POB";
Obj2.ChangeType(Obj2_Type);
}

C++

fstream POBfile;
string filepath = TheApplication->ObjectsDir + "\\Polygon Objects\\API_cube_demo.POB";
POBfile.open(filepath, fstream::trunc | ios::out);
POBfile << "! A cube" << "\n";
POBfile << "! front face vertices" << "\n" << "V 1 -1 -1 0" << "\n" << "V 2 1 -1 0" << "\n" << "V 3 1 1 0" << "\n" << "V 4 -1 1 0" << "\n";
POBfile << "! back face vertices" << "\n" << "V 5 -1 -1 2" << "\n" << "V 6 1 -1 2" << "\n" << "V 7 1 1 2" << "\n" << "V 8 -1 1 2" << "\n";
POBfile << "! Front" << "\n" << "R 1 2 3 4 0 0" << "\n" << "! Back" << "\n" << "R 5 6 7 8 0 0" << "\n";
POBfile << "! Top" << "\n" << "R 4 3 7 8 0 0" << "\n" << "! Bottom" << "\n" << "R 1 2 6 5 0 0" << "\n";
POBfile << "! Left Side" << "\n" << "R 1 4 8 5 0 0" << "\n" << "! Right Side" << "\n" << "R 2 3 7 6 0 0";
INCERowPtr Obj2 = NSCE->InsertNewObjectAt(2); // Add new line to NSCE
IObjectTypeSettingsPtr Obj2_Type = Obj2->GetObjectTypeSettings(ObjectType_PolygonObject);
Obj2_Type->FileName1 = "API_cube_demo.POB";
Obj2->ChangeType(Obj2_Type);

Matlab

POBfile = fopen(char(System.String.Concat(TheApplication.ObjectsDir, '\\Polygon Objects\\API_cube_demo.POB')), 'w'); % Open new POB file
% Append new POB file with polygon definitions (see help files for syntax information)
fprintf(POBfile, '! A cube\n');
fprintf(POBfile, '! front face vertices\nV 1 -1 -1 0\nV 2 1 -1 0\nV 3 1 1 0\nV 4 -1 1 0\n');
fprintf(POBfile, '! back face vertices\nV 5 -1 -1 2\nV 6 1 -1 2\nV 7 1 1 2\nV 8 -1 1 2\n');
fprintf(POBfile, '! Front\nR 1 2 3 4 0 0\n! Back\nR 5 6 7 8 0 0\n');
fprintf(POBfile, '! Top\nR 4 3 7 8 0 0\n! Bottom\nR 1 2 6 5 0 0\n');
fprintf(POBfile, '! Left Side\nR 1 4 8 5 0 0\n! Right Side\nR 2 3 7 6 0 0');
fclose(POBfile);
Obj2 = NSCE.InsertNewObjectAt(2); % Add new line to NSCE
Obj2_Type = Obj2.GetObjectTypeSettings(ZOSAPI.Editors.NCE.ObjectType.PolygonObject);
Obj2_Type.FileName1 = 'API_cube_demo.POB';
Obj2.ChangeType(Obj2_Type);

Python

POBfile = open(TheApplication.ObjectsDir + "\\Polygon Objects\\API_cube_demo.POB", "w") # Open new POB file
# Append new POB file with polygon definitions (see help files for syntax information)
POBfile.write("! A cube" '\n')
POBfile.write("! front face vertices" '\n' "V 1 -1 -1 0" '\n' "V 2 1 -1 0" '\n' "V 3 1 1 0" '\n' "V 4 -1 1 0" '\n')
POBfile.write("! back face vertices" '\n' "V 5 -1 -1 2" '\n' "V 6 1 -1 2" '\n' "V 7 1 1 2" '\n' "V 8 -1 1 2" '\n')
POBfile.write("! Front" '\n' "R 1 2 3 4 0 0" '\n' "! Back" '\n' "R 5 6 7 8 0 0" '\n')
POBfile.write("! Top" '\n' "R 4 3 7 8 0 0" '\n' "! Bottom" '\n' "R 1 2 6 5 0 0" '\n')
POBfile.write("! Left Side" '\n' "R 1 4 8 5 0 0" '\n' "! Right Side" '\n' "R 2 3 7 6 0 0")
POBfile.close()
Obj2 = NSCE.InsertNewObjectAt(2) # Add new line to NSCE
Obj2_Type = Obj2.GetObjectTypeSettings(ZOSAPI.Editors.NCE.ObjectType.PolygonObject)
Obj2_Type.FileName1 = "API_cube_demo.POB"
Obj2.ChangeType(Obj2_Type)
Examples
CSharpStandalone_09_NSC_CAD.cs.

◆ HasFaceParameters

bool ZOSAPI.Editors.NCE.INCECADData.HasFaceParameters
get

◆ HasMergeSurfaces

bool ZOSAPI.Editors.NCE.INCECADData.HasMergeSurfaces
get

◆ HasPartData

bool ZOSAPI.Editors.NCE.INCECADData.HasPartData
get

◆ HasSurfaceTolerance

bool ZOSAPI.Editors.NCE.INCECADData.HasSurfaceTolerance
get

◆ HasTraceMode

bool ZOSAPI.Editors.NCE.INCECADData.HasTraceMode
get

◆ IsCADAvailable

bool ZOSAPI.Editors.NCE.INCECADData.IsCADAvailable
get

◆ MaxEdgeLength

double ZOSAPI.Editors.NCE.INCECADData.MaxEdgeLength
getset

◆ MergeSurfaces

bool ZOSAPI.Editors.NCE.INCECADData.MergeSurfaces
getset

◆ NumberOfConfigurations

int ZOSAPI.Editors.NCE.INCECADData.NumberOfConfigurations
get

◆ NumberOfParts

int ZOSAPI.Editors.NCE.INCECADData.NumberOfParts
get

◆ NumberOfSurfaces

int ZOSAPI.Editors.NCE.INCECADData.NumberOfSurfaces
get

◆ SurfaceTolerance

int ZOSAPI.Editors.NCE.INCECADData.SurfaceTolerance
getset

◆ TraceMode

RayTraceModes ZOSAPI.Editors.NCE.INCECADData.TraceMode
getset

Connect with Ansys