Skip to main content
OCCT category icon with a stylized logo representation

Creating Face From The List Of Points

Creating a face from a list of points is essential for building custom polygonal shapes in 3D modeling. This method allows you to define a face by specifying its boundary vertices in order, which is particularly useful for creating irregular shapes, architectural elements, or custom geometric forms that can't be easily generated with standard primitives.

The polygon face operation automatically connects your points in sequence and creates a planar face that fills the enclosed area. Point ordering is crucial - the sequence determines both the shape and the orientation of the resulting face.

This example demonstrates creating a quadrilateral face from four strategically placed points to form an asymmetric shape.

Bitbybit Platform

Creating face from points

rete logoRete
Script Source (rete)
{
"id": "rete-v2-json",
"nodes": {
"2324f1563fb96797": {
"id": "2324f1563fb96797",
"name": "bitbybit.occt.shapes.face.createPolygonFace",
"customName": "polygon face",
"async": true,
"drawable": true,
"data": {
"genericNodeData": {
"hide": false,
"oneOnOne": false,
"flatten": 0,
"forceExecution": false
}
},
"inputs": {
"points": {
"connections": [
{
"node": "53c2c8fef1996ec7",
"output": "list",
"data": {}
}
]
}
},
"position": [
1213.45703125,
380.53125
]
},
"53c2c8fef1996ec7": {
"id": "53c2c8fef1996ec7",
"name": "bitbybit.lists.createList",
"customName": "create list",
"data": {},
"inputs": {
"listElements": {
"connections": [
{
"node": "2cff472f687b1641",
"output": "result",
"data": {}
},
{
"node": "337e05b1f0ba35d2",
"output": "result",
"data": {}
},
{
"node": "56b84947cb212c4d",
"output": "result",
"data": {}
},
{
"node": "46d2c5d9d53267af",
"output": "result",
"data": {}
}
]
}
},
"position": [
844.49609375,
420.390625
]
},
"46d2c5d9d53267af": {
"id": "46d2c5d9d53267af",
"name": "bitbybit.point.pointXYZ",
"customName": "point xyz",
"async": false,
"drawable": true,
"data": {
"genericNodeData": {
"hide": false,
"oneOnOne": false,
"flatten": 0,
"forceExecution": false
},
"x": 5,
"y": 0,
"z": 0
},
"inputs": {},
"position": [
214.67582165780863,
869.8646496886554
]
},
"56b84947cb212c4d": {
"id": "56b84947cb212c4d",
"name": "bitbybit.point.pointXYZ",
"customName": "point xyz",
"async": false,
"drawable": true,
"data": {
"genericNodeData": {
"hide": false,
"oneOnOne": false,
"flatten": 0,
"forceExecution": false
},
"x": 3,
"y": 0,
"z": 3
},
"inputs": {},
"position": [
222.77674190486215,
520.51464211483
]
},
"337e05b1f0ba35d2": {
"id": "337e05b1f0ba35d2",
"name": "bitbybit.point.pointXYZ",
"customName": "point xyz",
"async": false,
"drawable": true,
"data": {
"genericNodeData": {
"hide": false,
"oneOnOne": false,
"flatten": 0,
"forceExecution": false
},
"x": -3,
"y": 0,
"z": 3
},
"inputs": {},
"position": [
220.38414421490873,
162.614275263899
]
},
"2cff472f687b1641": {
"id": "2cff472f687b1641",
"name": "bitbybit.point.pointXYZ",
"customName": "point xyz",
"async": false,
"drawable": true,
"data": {
"genericNodeData": {
"hide": false,
"oneOnOne": false,
"flatten": 0,
"forceExecution": false
},
"x": -3,
"y": 0,
"z": -8
},
"inputs": {},
"position": [
220.9303297165426,
-200.30758143378307
]
}
}
}

Key Concepts

Point Ordering: The sequence of points determines both the shape and orientation of the polygon face. Points should be ordered consistently (either clockwise or counter-clockwise) to ensure predictable face normals and proper rendering.

Polygon Face Creation: The createPolygonFace function automatically connects the points in sequence and fills the enclosed area with a planar face. This is ideal for creating custom shapes that can't be generated with standard geometric primitives.

Coplanar Points: For best results, all points should lie in the same plane. While OCCT can handle slightly non-coplanar points by fitting a best-fit plane, significant deviations may produce unexpected results.

Practical Applications: Polygon faces from points are commonly used for architectural elements (floor plans, wall sections), custom mechanical parts, artistic designs, and any situation where you need precise control over shape boundaries.