Определяет плоскость произвольной двумерной формы, используя пути с необязательными отверстиями. Может использоваться с ExtrudeGeometry, ShapeGeometry, для получения точек или для получения триангулированных граней.
const heartShape = new v3d.Shape();
heartShape.moveTo(25, 25);
heartShape.bezierCurveTo(25, 25, 20, 0, 0, 0);
heartShape.bezierCurveTo(30, 0, 30, 35,30,35);
heartShape.bezierCurveTo(30, 55, 10, 77, 25, 95);
heartShape.bezierCurveTo(60, 77, 80, 55, 80, 35);
heartShape.bezierCurveTo(80, 35, 80, 0, 50, 0);
heartShape.bezierCurveTo(35, 0, 25, 25, 25, 25);
const extrudeSettings = { amount: 8, bevelEnabled: true, bevelSegments: 2, steps: 2, bevelSize: 1, bevelThickness: 1 };
const geometry = new v3d.ExtrudeBufferGeometry(heartShape, extrudeSettings);
const mesh = new v3d.Mesh(geometry, new v3d.MeshPhongMaterial());
points — (необязательный) массив Vector2s.
Создает фигуру из точек. Первая точка определяет смещение, затем последующие точки добавляются в массив curves как LineCurves.
Если точки не указаны, создается пустая фигура, а .currentPoint устанавливается в начало координат.
Общие свойства смотрите в базовом классе Path..
UUID данного экземпляра. Он присваивается автоматически, поэтому его не нужно редактировать.
Массив paths, определяющий отверстия в фигуре.
Общие методы смотрите в базовом классе Path.
divisions — Точность результата.
Вызовите getPoints на форме и массиве .holes, и верните объект формы:
{
shape
holes
}
где shape и holes - массивы Vector2s.
divisions — Точность результата.
Получите массив Vector2s, представляющий отверстия(holes) в фигуре.
О том как получить исходный код этого модуля читайте тут.