CurveCurvePathPath

Shape

Определяет плоскость произвольной двумерной формы, используя пути с необязательными отверстиями. Может использоваться с 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());

Примеры

geometry / shapes
geometry / extrude / shapes
geometry / extrude / shapes2

Конструктор

Shape(points : Array)

points — (необязательный) массив Vector2s.

Создает фигуру из точек. Первая точка определяет смещение, затем последующие точки добавляются в массив curves как LineCurves.

Если точки не указаны, создается пустая фигура, а .currentPoint устанавливается в начало координат.

Свойства

Общие свойства смотрите в базовом классе Path..

.uuid : String

UUID данного экземпляра. Он присваивается автоматически, поэтому его не нужно редактировать.

.holes : Array

Массив paths, определяющий отверстия в фигуре.

Методы

Общие методы смотрите в базовом классе Path.

.extractPoints(divisions : Integer) → Array

divisions — Точность результата.

Вызовите getPoints на форме и массиве .holes, и верните объект формы: { shape holes } где shape и holes - массивы Vector2s.

.getPointsHoles(divisions : Integer) → Array

divisions — Точность результата.

Получите массив Vector2s, представляющий отверстия(holes) в фигуре.

Исходный файл

О том как получить исходный код этого модуля читайте тут.