Кривые и точки
Методы построения геометрии кривых: аналитические примитивы (точка, отрезок, окружность, дуга, эллипс, спираль, NURBS, составные кривые), производные кривые (на поверхности, обрезанные, инвертированные, пересечения) и их параметризация.
Цвет. Текущий цвет задаётся вызовом SetCurrentColor(Value: integer). Это состояние: заданный цвет применяется ко всем создаваемым после него объектам — поверхностям, кривым и точкам (добавляемым через AddEntity или AddComboSolidFace) и сохраняется, пока не будет изменён следующим вызовом. Поэтому SetCurrentColor вызывают перед каждым объектом, которому нужен свой цвет. Если SetCurrentColor не вызывался, цвет не переопределяется и объект наследует цвет родительского узла дерева. Формат значения — упакованное целое Blue shl 16 or Green shl 8 or Red (по 8 бит на канал).
Пример: сохранение кривых и точек.
void SaveCurves(CADCurve[] curves)
{
foreach (CADCurve curve in curves)
if (SaveCurve(curve))
{
sgr.SetCurrentColor(curve.Color); // цвет действует на следующий AddEntity (и далее, пока не сменится)
sgr.AddEntity(curve.Id, curve.Name);
}
}
void SavePoints(CADPoint[] points)
{
foreach (CADPoint point in points)
{
sgr.CreatePoint(point.Id, ToPoint(point)); // координаты CAD-точки приводим к TST3DPoint
sgr.AddEntity(point.Id, point.Name); // SetCurrentColor не вызывали — точка наследует текущий/родительский цвет
}
}
Методы построения кривых сгруппированы в трёх разделах:
- Точка и аналитические кривые — точка, система координат, отрезок, окружность, дуга, эллипс, спираль, NURBS-кривая, составные кривые.
- Производные кривые — кривая на поверхности, обрезанная, инвертированная, кривая пересечения и граница скругления.
- Параметризация кривых — изменение диапазона и перепараметризация уже созданной кривой.