docs/Kompas3D_SDK/ становится каноническим источником справки КОМПАС SDK и включается в репозиторий (2491 файл, ~14 МБ). HTML-зеркало docs/KOMPAS_SDK_ru-RU/ (~1.4 ГБ, © АСКОН) и генератор tools/build_kompas3d_sdk.py больше не нужны — регенерация не предполагается. - .gitignore: MD-база разблокирована; зеркало остаётся проигнорированным (safety-net на случай повторной локальной выгрузки). - CLAUDE.md / SKILL.md: убраны упоминания регенерации и зеркала. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
52 KiB
title, type, api, domain, tags, sources
| title | type | api | domain | tags | sources | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Интерфейс математических функций (Интерфейс ksMathematic2D) | interface |
|
|
|
|
*API интерфейсов. Версия 5 > Графический документ (Интерфейсы - ksDocument2D и IDocument2D) *
Интерфейс математических функций (Интерфейс ksMathematic2D)
Интерфейс математических функций. Примечание: Указатель на интерфейс можно получить при помощи метода KompasObject::GetMathematic2D. Смотрите также: KompasObject
ksAngle - Получить угол (в градусах) между осью OX и вектором, заданным двумя точками
Аналог данного метода при использовании API экспортных функций - Angle. Синтаксис Automation:
double ksAngle (double x1,
double y1,
double x2,
double y2);
Входные параметры:
x1, y1 - координаты начальной точки вектора,
x2, y2 - координаты конечной точки вектора.
Возвращаемое значение:
угол в градусах.
ksAtanD - Получить арктангенс аргумента
Аналог данного метода при использовании API экспортных функций - ATanD. Синтаксис Automation:
double ksAtanD (double x);
Входной параметр:
x - тангенс угла.
Возвращаемое значение:
- угол (в градусах).
ksCalcInertiaProperties - Получить плоские массово-центровочные характеристики кривой или группы кривых
Аналог данного метода при использовании API экспортных функций - ksCalcInertiaProperties. Синтаксис Automation:
long ksCalcInertiaProperties (long p,
LPDISPATCH properties,
short dimension);
Входные параметры:
p - указатель на кривую или группу кривых,
dimension - размерность длины.
Выходные параметры:
properties - указатель на интерфейс параметров для расчета МЦХ ksInertiaParam.
Размерности длины...
Возвращаемое значение:
1 - в случае удачного завершения.
Примечание: Кривые должны быть замкнутыми и представлять собой наружные и внутренние контура.
ksCalcMassInertiaProperties - Получить объемные массово-центровочные характеристики тел вращения или выдавливания, заданных кривой или группой кривых
Аналог данного метода при использовании API экспортных функций - ksCalcMassInertiaProperties. Синтаксис Automation:
long ksCalcMassInertiaProperties (long p,
LPDISPATCH properties,
double density,
double param);
Входные параметры:
p - указатель на кривую или группу кривых,
density - плотность тела (г/куб.мм),
param - параметр тела (для тела вращения - угол раствора в градусах, для тела выдавливания - толщина).
Выходные параметры:
properties - указатель на интерфейс параметров для расчета массово-центровочных характеристик ksMassInertiaParam.
Возвращаемое значение:
1 - в случае удачного завершения.
Примечания:
- Кривые должны быть замкнутыми и представлять собой наружные и внутренние контура.
- Тип тела (тело вращения или выдавливания) устанавливается перед вызовом метода в интерфейсе ksMassInertiaParam.
ksCosD - Получить косинус аргумента
Аналог данного метода при использовании API экспортных функций - CosD. Синтаксис Automation:
double ksCosD (double x);
Входной параметр:
x - угол в градусах.
Возвращаемое значение:
- косинус аргумента.
ksCouplingCircleCircle - Получить параметры сопрягающих окружностей определенного радиуса и точки сопряжения для двух окружностей
Аналог данного метода при использовании API экспортных функций - ksCouplingCircleCircle. Синтаксис Automation:
BOOL ksCouplingCircleCircle (double xc1,
double yc1,
double radc1,
double xc2,
double yc2,
double radc2,
double rad,
LPDISPATCH param);
Входные параметры:
xc1, yc1 - координаты центра первой окружности,
rad1 - радиус первой окружности,
xc2, yc2 - координаты центра второй окружности,
Rad - радиус второй окружности.
Выходной параметр:
param - указатель на интерфейс массива координат точек сопряжения ksCON.
Возвращаемое значение:
TRUE - точки касания обнаружены,
FALSE - точки касания не обнаружены.
ksCouplingLineCircle - Получить параметры сопрягающих окружностей определенного радиуса и точки касания при сопряжении окружности и прямой
Аналог данного метода при использовании API экспортных функций - ksCouplingLineCircle. Синтаксис Automation:
BOOL ksCouplingLineCircle (double xc,
double yc,
double radc,
double x1,
double y1,
double angle1,
double rad,
LPDISPATCH param);
Входные параметры:
xc, yc - координаты центра окружности,
radc - радиус окружности,
x1, y1 - координаты точки на прямой,
angle1 - угол наклона прямой,
rad - радиус окружности сопряжения.
Выходной параметр:
param - указатель на интерфейс массива координат точек сопряжения ksCON.
Возвращаемое значение:
TRUE - точки касания обнаружены,
FALSE - точки касания не обнаружены.
ksCouplingLineLine - Получить параметры окружностей, касательных к двум прямым
Аналог данного метода при использовании API экспортных функций - CouplingLineLine. Синтаксис Automation:
BOOL ksCouplingLineLine (double x1,
double y1,
double angle1,
double x2,
double y2,
double angle2,
double rad,
LPDISPATCH param);
Входные параметры:
x1, y1 - координаты точки на первой прямой,
angle1 - угол наклона первой прямой,
x2, y2 - координаты точки на второй прямой,
angle2 - угол наклона второй прямой.
Выходной параметр:
param - указатель на интерфейс массива координат точек сопряжения ksCON.
Возвращаемое значение:
TRUE - точки касания обнаружены,
FALSE - точки касания не обнаружены.
ksDistanceCurveCurve - Добавить проекцию отображения - развертка
Аналог данного метода при использовании API экспортных функций - ksDistanceCurveCurve. Синтаксис Automation:
long ksDistanceCurveCurve( long p1, long p2, double * distanse, double * t1, double * t2 );
Входные параметры:
p1 - указатель на первую кривую,
p2 - указатель на вторую кривую.
Выходные параметры:
distanse - расстояние,
t1 - параметр на кривой 1 в точке с минимальным удалением,
t2 - параметр на кривой 2 в точке с минимальным удалением.
Возвращаемое значение:
1 - успешное завершение,
0 - построить касательную нельзя (кривые совпадают или одна кривая вложена в другую),
-1 - первый объект не существует,
-2 - второй объект не существует,
-3 - кривые расположены в разных видах,
-4 - не совпадают СК определения кривых (геометрическая и аннотационная),
-5 - первый объект не является кривой,
-6 - второй объект не является кривой,
-7 - ошибка.
ksDistancePntArc - Получить расстояние между точкой и дугой
Аналог данного метода при использовании API экспортных функций - ksDistancePntArc. Синтаксис Automation:
double ksDistancePntArc (double x,
double y,
double xac,
double yac,
double rada,
double fa1,
double fa2,
short directa);
Входные параметры:
x, y - координаты точки,
xac, yac - координаты центра дуги,
rada - радиус дуги,
fa1, fa2 - начальный и конечный углы дуги,
directa - направление дуги: 1 - против часовой стрелки, -1 – по часовой стрелке.
Возвращаемое значение:
- расстояние между точкой и дугой.
ksDistancePntCircle - Получить расстояние между точкой и окружностью
Аналог данного метода при использовании API экспортных функций - ksDistancePntCircle. Синтаксис Automation:
double ksDistancePntCircle (double x,
double y,
double xc,
double yc,
double rad);
Входные параметры:
x, y - координаты точки,
xc, yc - координаты центра окружности,
rad - радиус окружности.
Возвращаемое значение:
- расстояние между точкой и окружностью.
ksDistancePntLine - Получить расстояние между точкой и прямой, заданной точкой и углом
Аналог данного метода при использовании API экспортных функций - ksDistancePntLine. Синтаксис Automation:
double ksDistancePntLine (double x,
double y,
double x1,
double y1,
double angle);
Входные параметры:
x, y - координаты точки,
x1, y1 - координаты точки на прямой,
angle - угол наклона прямой.
Возвращаемое значение:
- расстояние между точкой и прямой.
ksDistancePntLineForPoint - Получить расстояние между точкой и прямой, заданной двумя точками
Аналог данного метода при использовании API экспортных функций - ksDistancePntLineForPoint. Синтаксис Automation:
double ksDistancePntLineForPoint (double x,
double y,
double x1,
double y1,
double x2,
double y2);
Входные параметры:
x, y - координаты точки,
x1, y1 - координаты первой точки на прямой,
x2, y2 - координаты второй точки на прямой.
Возвращаемое значение:
- расстояние между точкой и прямой.
ksDistancePntLineSeg - Получить расстояние между точкой и отрезком
Аналог данного метода при использовании API экспортных функций - ksDistancePntLineSeg. Синтаксис Automation:
double ksDistancePntLineSeg (double x,
double y,
double x1,
double y1,
double x2,
double y2);
Входные параметры:
x, y - координаты точки,
x1, y1 - координаты начальной точки отрезка,
x2, y2 - координаты конечной точки отрезка.
Возвращаемое значение:
- расстояние между точкой и отрезком.
ksDistancePntPnt - Получить расстояние между двумя точками
Аналог данного метода при использовании API экспортных функций - DistancePntPnt. Синтаксис Automation:
double ksDistancePntPnt (double x1,
double y1,
double x2,
double y2);
Входные параметры:
x1, y1 - координаты первой точки,
x2, y2 - координаты второй точки.
Возвращаемое значение:
- расстояние между двумя точками.
ksDistancePntPntOnCurve - Получить расстояние между двумя точками на кривой
Аналог данного метода при использовании API экспортных функций - ksDistancePntPntOnCurve. Синтаксис Automation:
double ksDistancePntPntOnCurve (long curve,
double x1,
double y1,
double x2,
double y2);
Входные параметры:
curve - указатель на кривую,
x1, y1 - координаты первой точки,
x2, y2 - координаты второй точки.
Возвращаемое значение:
расстояние между двумя точками на кривой - в случае успеха,
0 - в случае неудачи.
Примечание: Если заданные точки не находятся на кривой, то определяется расстояние между их проекциями на кривую.
ksDistanceT1T2OnCurve - Получить расстояние между двумя точками на кривой по параметрам кривой в данных точках
Аналог данного метода при использовании API экспортных функций - ksDistanceT1T2OnCurve. Синтаксис Automation:
long ksDistanceT1T2OnCurve (long curve,
double t1,
double t2);
Входные параметры:
curve - указатель на кривую,
t1 - параметр кривой в точке 1,
t2 - параметр кривой в точке 2.
Возвращаемое значение:
- Расстояние между двумя точками на кривой.
ksEqualPoints - Определить эквивалентность (совпадение) двух точек
Аналог данного метода при использовании API экспортных функций - ksEqualPoints. Синтаксис Automation:
long ksEqualPoints (double x1,
double y1,
double x2,
double y2);
Входные параметры:
x1, y1 - координаты первой точки,
x2, y2 - координаты второй точки.
Возвращаемое значение:
1 - точки совпадают,
0 - точки не совпадают.
ksGetCurveMinMaxParametr - Получить минимальный и максимальный параметр кривой
Аналог данного метода при использовании API экспортных функций - ksGetCurveMinMaxParametr. Синтаксис Automation:
long ksGetCurveMinMaxParametr (long curve,
double *tMin,
double *tMax);
Входные параметры:
curve - указатель на кривую.
Выходные параметры:
tMin - минимальный параметр кривой,
tMax - максимальный параметр кривой.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
ksGetCurvePerimeter - Получить периметр кривой
Аналог данного метода при использовании API экспортных функций - ksGetCurvePerimeter. Синтаксис Automation:
double ksGetCurvePerimeter (long curve,
short dimension);
Входные параметры:
curve - указатель на кривую,
dimension - размерность длины.
Размерности длины...
Возвращаемое значение:
- периметр кривой.
ksGetCurvePerpendicular - Получить угол нормали к кривой в заданной точке
Аналог данного метода при использовании API экспортных функций - ksGetCurvePerpendicular. Синтаксис Automation:
double ksGetCurvePerpendicular (long curve,
double x,
double y);
Входные параметры:
curve - указатель на кривую,
x, y - координаты точки.
Возвращаемое значение:
- угол нормали к кривой в заданной точке (в градусах).
Примечание: Если указанная точка не находится на кривой, она проецируется на кривую.
ksGetCurvePerpendicularByT - Функция возвращает угол нормали к кривой в заданной точке по параметру кривой
Аналог данного метода при использовании API экспортных функций - ksGetCurvePerpendicularByT. Синтаксис Automation:
double ksGetCurvePerpendicularByT( long curve, double t );
Входные параметры:
p - указатель на кривую,
t - параметр кривой.
Выходной параметр:
param - указатель на интерфейс динамического массива ksDynamicArray углов касательных типа DOUBLE_ARR.
Возвращаемое значение:
- угол нормали.
ksGetCurvePoint - Преобразовать параметр кривой t в координаты вида
Аналог данного метода при использовании API экспортных функций - ksGetCurvePoint. Синтаксис Automation:
long ksGetCurvePoint (long curve,
double t,
double *x,
double *y);
Входные параметры:
curve - указатель на кривую,
t - параметр кривой.
Выходные параметры:
kx, ky - координаты проекции точки на кривую,
Возвращаемое значение:
1 - в случае удачного завершения.
0 - в случае неудачи.
Примечание: См. также ksMathematic2D::ksGetCurvePointProjectionEx.
ksGetCurvePointProjection - Получить координаты проекции точки на кривую
Аналог данного метода при использовании API экспортных функций - ksGetCurvePointProjection. Синтаксис Automation:
long ksGetCurvePointProjection (long curve,
double x,
double y,
double* kx,
double* ky);
Входные параметры:
curve - указатель на кривую,
x, y - координаты проецируемой точки.
Выходные параметры:
kx, ky - координаты проекции точки на кривую.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Примечание:
- См. также ksMathematic2D::ksGetCurvePointProjectionEx.
- При выполнении метода ksGetCurvePointProjection проекция на кривую из данной точки может быть не найдена, например, если проекция находится на продолжении кривой. В таком случае возвращаются координаты ближайшей к проекции начальной или конечной точки кривой.
- В метод ksGetCurvePointProjection нужно передавать координаты в системе координат кривой, то есть в системе координат макроэлемента, которому принадлежит кривая. Возвращаются координаты также в системе координат кривой.
ksGetCurvePointProjectionEx - Получить координаты проекции точки на кривую
Аналог данного метода при использовании API экспортных функций - ksGetCurvePointProjectionEx. Синтаксис Automation:
long ksGetCurvePointProjectionEx (long curve,
double x, double y,
double *kx, double *ky,
double *t);
Входные параметры:
curve - указатель на кривую,
x, y - координаты проецируемой точки.
Выходные параметры:
kx, ky - координаты проекции точки на кривую,
t - параметр кривой.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Примечание:
- См. также ksMathematic2D::ksGetCurvePointProjection.
- При выполнении метода ksGetCurvePointProjectionEx проекция на кривую из данной точки может быть не найдена, например, если проекция находится на продолжении кривой. В таком случае возвращаются координаты ближайшей к проекции начальной или конечной точки кривой.
- В метод ksGetCurvePointProjectionEx нужно передавать координаты в системе координат кривой, то есть в системе координат макроэлемента, которому принадлежит кривая. Возвращаются координаты также в системе координат кривой.
ksIntersectArcArc - Получить координаты точек пересечения двух дуг окружностей
Аналог данного метода при использовании API экспортных функций - IntersectArcArc. Синтаксис Automation:
BOOL ksIntersectArcArc (double xac,
double yac,
double rada,
double fa1,
double fa2,
short directa,
double xbc,
double ybc,
double radb,
double fb1,
double fb2,
short directb,
LPDISPATCH param);
Входные параметры:
xac, yac - координаты центра первой дуги,
rada - радиус первой дуги,
fa1, fa2 - углы начальной и конечной точек первой дуги,
directa - направление первой дуги: 1 - против часовой стрелки, -1 – по часовой стрелке,
xbc, ybc - координаты центра второй дуги,
radb - радиус второй дуги,
fb1, fb2 - углы начальной и конечной точек второй дуги,
directb - направление второй дуги: 1 - против часовой стрелки, -1 – по часовой стрелке.
Выходной параметр:
param - указатель на интерфейс динамического массива параметров математической точки типа POINT_ARR ksDynamicArray.
Возвращаемое значение:
TRUE - пересечение данных объектов обнаружено,
FALSE - пересечение не обнаружено.
Смотрите также: ksMathPointParam
ksIntersectArcLin - Получить координаты точек пересечения дуги окружности и прямой
Аналог данного метода при использовании API экспортных функций - IntersectArcLine. Синтаксис Automation:
BOOL ksIntersectArcLin (double xc,
double yc,
double rad,
double f1,
double f2,
long n,
double x,
double y,
double ang,
LPDISPATCH param);
Входные параметры:
xc, yc - координаты центра окружности,
rad - радиус окружности,
f1, f2 - углы начальной и конечной точек дуги,
n - направление дуги: 1 - против часовой стрелки, -1 - по часовой стрелке,
x, y - координаты точки на прямой,
ang - угол наклона прямой.
Выходной параметр:
param - указатель на интерфейс динамического массива параметров математической точки типа POINT_ARR ksDynamicArray.
Возвращаемое значение:
TRUE - пересечение данных объектов обнаружено,
FALSE - пересечение не обнаружено.
Смотрите также: ksMathPointParam
ksIntersectCirArc - Получить координаты точек пересечения окружности и дуги
Аналог данного метода при использовании API экспортных функций - IntersectCirArc. Синтаксис Automation:
BOOL ksIntersectCirArc (double xcc,
double ycc,
double radc,
double xac,
double yac,
double rada,
double fa1,
double fa2,
short directa,
LPDISPATCH param);
Входные параметры:
xcс, ycс - координаты центра окружности,
radc - радиус окружности,
xac, yac - координаты центра дуги,
rada - радиус дуги,
fa1, fa2 - углы начальной и конечной точек дуги,
directa - направление дуги: 1 - против часовой стрелки, -1 - по часовой стрелке.
Выходной параметр:
param - указатель на интерфейс динамического массива параметров математической точки типа POINT_ARR ksDynamicArray.
Возвращаемое значение:
TRUE - пересечение данных объектов обнаружено,
FALSE - пересечение не обнаружено.
Смотрите также: ksMathPointParam
ksIntersectCirCir - Получить координаты точек пересечения двух окружностей
Аналог данного метода при использовании API экспортных функций - IntersectCirCir. Синтаксис Automation:
BOOL ksIntersectCirCir (double xc1,
double yc1,
double radius1,
double xc2,
double yc2,
double radius2,
LPDISPATCH param);
Входные параметры:
xc1, yc1 - координаты центра первой окружности,
radius1 - радиус первой окружности,
xc2, yc2 - координаты центра второй окружности,
radius2 - радиус второй окружности,
Выходной параметр:
param - указатель на интерфейс динамического массива параметров математической точки типа POINT_ARR ksDynamicArray.
Возвращаемое значение:
TRUE - пересечение данных объектов обнаружено,
FALSE - пересечение не обнаружено.
Смотрите также: ksMathPointParam
ksIntersectCirLin - Получить координаты точек пересечения окружности и прямой
Аналог данного метода при использовании API экспортных функций - IntersectCirLin. Синтаксис Automation:
BOOL ksIntersectCirLin (double xc,
double yc,
double rad,
double xl,
double yl,
double angle,
LPDISPATCH param);
Входные параметры:
xc, yc - координаты центра окружности,
rad - радиус окружности,
x1, y1 - координаты точки на прямой,
angle - угол наклона прямой.
Выходной параметр:
param - указатель на интерфейс динамического массива параметров математической точки типа POINT_ARR ksDynamicArray.
Возвращаемое значение:
TRUE - пересечение данных объектов обнаружено,
FALSE - пересечение не обнаружено.
Смотрите также: ksMathPointParam
ksIntersectCurvCurv - Получить координаты точек пересечения двух кривых
Аналог данного метода при использовании API экспортных функций - ksIntersectCurvCurv. Синтаксис Automation:
long ksIntersectCurvCurv (long p1,
long p2,
LPDISPATCH param);
Входные параметры:
p1 - указатель на первую кривую,
p2 - указатель на вторую кривую.
Выходной параметр:
param - указатель на интерфейс динамического массива параметров математической точки типа POINT_ARR ksDynamicArray.
Возвращаемое значение:
1 - пересечение данных объектов обнаружено,
0 - пересечение не обнаружено (кривые не пересекаются или совпадают),
-1 - первый объект не существует,
-2 - второй объект не существует,
-3 - кривые расположены в разных видах,
-4 - один (или оба) из указанных объектов - не геометрический (не отрезок, не окружность, а, например, линия-выноска),
-5 - первый объект не является кривой,
-6 - второй объект не является кривой,
-7 - ошибка: массив типа POINT_ARR предварительно не создан.
Смотрите также: ksMathPointParam
ksIntersectLinLin - Получить координаты точки пересечения двух прямых
Аналог данного метода при использовании API экспортных функций - IntersectLinLin. Синтаксис Automation:
BOOL ksIntersectLinLin (double x1,
double y1,
double angle1,
double x2,
double y2,
double angle2,
LPDISPATCH param);
Входные параметры:
x1, y1 - координаты точки на первой прямой,
angle1 - угол наклона первой прямой,
x2, y2 - координаты точки на второй прямой,
angle2 - угол наклона второй прямой,
Выходной параметр:
param - указатель на интерфейс динамического массива параметров математической точки типа POINT_ARR ksDynamicArray.
Возвращаемое значение:
TRUE - пересечение данных объектов обнаружено,
FALSE - пересечение не обнаружено.
Смотрите также: ksMathPointParam
ksIntersectLinSArc - Получить координаты точек пересечения отрезка и дуги
Аналог данного метода при использовании API экспортных функций - IntersectLinSArc. Синтаксис Automation:
BOOL ksIntersectLinSArc (double x1,
double y1,
double x2,
double y2,
double xc,
double yc,
double rad,
double f1,
double f2,
short direct,
LPDISPATCH param);
Входные параметры:
x1, y1 - координаты начальной точки отрезка,
x2, y2 - координаты конечной точки отрезка,
xc, yc - координаты центра дуги,
rad - радиус дуги,
f1, f2 - углы начальной и конечной точек дуги,
direct - направление дуги: 1 - против часовой стрелки, -1 - по часовой стрелке.
Выходной параметр:
param - указатель на интерфейс динамического массива параметров математической точки типа POINT_ARR ksDynamicArray.
Возвращаемое значение:
TRUE - пересечение данных объектов обнаружено,
FALSE - пересечение не обнаружено.
Смотрите также: ksMathPointParam
ksIntersectLinSCir - Получить координаты точек пересечения отрезка и окружности
Аналог данного метода при использовании API экспортных функций - IntersectLinSCir. Синтаксис Automation:
BOOL ksIntersectLinSCir (double x1,
double y1,
double x2,
double y2,
double xc,
double yc,
double rad,
LPDISPATCH param);
Входные параметры:
x1, y1 - координаты начальной точки отрезка,
x2, y2 - координаты конечной точки отрезка,
xc, yc - координаты центра окружности,
rad - радиус окружности.
Выходной параметр:
param - указатель на интерфейс динамического массива параметров математической точки типа POINT_ARR ksDynamicArray.
Возвращаемое значение:
TRUE - пересечение данных объектов обнаружено,
FALSE - пересечение не обнаружено.
Смотрите также: ksMathPointParam
ksIntersectLinSLine - Получить координаты точки пересечения отрезка и прямой
Аналог данного метода при использовании API экспортных функций - IntersectLinSLine. Синтаксис Automation:
BOOL ksIntersectLinSLine (double x1,
double y1,
double x2,
double y2,
double x,
double y,
double ang,
LPDISPATCH param);
Входные параметры:
x1, y1 - координаты начальной точки отрезка,
x2, y2 - координаты конечной точки отрезка,
x, y - координаты точки на прямой,
ang - угол наклона прямой.
Выходной параметр:
param - указатель на интерфейс динамического массива параметров математической точки типа POINT_ARR ksDynamicArray.
Возвращаемое значение:
TRUE - пересечение данных объектов обнаружено,
FALSE - пересечение не обнаружено.
Смотрите также: ksMathPointParam
ksIntersectLinSLinS - Получить координаты точки пересечения двух отрезков
Аналог данного метода при использовании API экспортных функций - IntersectLinSLinS. Синтаксис Automation:
BOOL ksIntersectLinSLinS (double x11,
double y11,
double x12,
double y12,
double x21,
double y21,
double x22,
double y22,
LPDISPATCH param);
Входные параметры:
x11, y11 - координаты начальной точки первого отрезка,
x12, y12 - координаты конечной точки первого отрезка,
x21, y21 - координаты начальной точки второго отрезка,
x22, y22 - координаты конечной точки второго отрезка.
Выходной параметр:
param - указатель на интерфейс динамического массива параметров математической точки типа POINT_ARR ksDynamicArray.
Возвращаемое значение:
TRUE - пересечение данных отрезков обнаружено,
FALSE - пересечение не обнаружено.
Смотрите также: ksMathPointParam
ksLinePointTangentCurve - Получить прямую через точку перпендикулярно данной кривой
Аналог данного метода при использовании API экспортных функций - ksLinePointTangentCurve. Синтаксис Automation:
BOOL ksLinePointTangentCurve( long p, double x, double y, LPDISPATCH param );
Входные параметры:
p - указатель на кривую,
x, y - координаты точки.
Выходной параметр:
param - указатель на интерфейс динамического массива ksDynamicArray углов касательных типа DOUBLE_ARR.
Возвращаемое значение:
TRUE - в случае удачного завершения,
FALSE - в случае неудачи.
ksMovePointOnCurve - Получить координаты точки, находящейся на указанном вдоль кривой расстоянии от указанной точки
Аналог данного метода при использовании API экспортных функций - ksMovePointOnCurve. Синтаксис Automation:
long ksMovePointOnCurve (long curve,
double* x,
double* y,
double len,
long dir);
Входные параметры:
curve - указатель на кривую,
len - расстояние, на которое нужно сместить точку,
dir - направление продвижения точки: 1 - в направлении построения кривой, -1 - в обратном направлении.
Выходные параметры:
x, y - координаты точки.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Примечание: Если точка не находится на кривой, она проецируется на кривую.
ksMovePointOnCurveEx - Переместить точку на расстояние len по кривой
Аналог данного метода при использовании API экспортных функций - ksMovePointOnCurveEx. Синтаксис Automation:
BOOL ksMovePointOnCurveEx( long curve, double* x, double* y, double* t, double len, long dir, long ext );
Входные параметры:
curve - указатель на кривую,
len - расстояние, на которое нужно сместить точку,
dir - направление продвижения точки: 1 - в направлении построения кривой -1 - в обратном направлении,
ext - учитывать продолжение кривой.
Выходной параметр:
x, y - координаты точки.
t - параметр кривой.
Возвращаемое значение:
TRUE - в случае удачного завершения,
FALSE - в случае неудачи.
Примечание: •Если в функцию перелается указатель на параметр кривой t, он используется в качестве начального параметра кривой для сдвига. •Если указатель не передается, начальный параметр кривой определяется по координатам x, y.
ksPerpendicular - Получить координаты точки пересечения отрезка и перпендикуляра к нему, проходящего через заданную точку
Аналог данного метода при использовании API экспортных функций - Perpendicular. Синтаксис Automation:
BOOL ksPerpendicular (double x,
double y,
double x1,
double y1,
double x2,
double y2,
double* xp,
double* yp);
Входные параметры:
x, y - координаты произвольной точки,
x1, y1 - координаты начальной точки отрезка,
x2, y2 - координаты конечной точки отрезка.
Выходные параметры:
xp, yp - координаты точки пересечения отрезка и перпендикуляра к нему, проходящего через заданную точку.
Возвращаемое значение:
TRUE - в случае удачного завершения.
ksPointsOnCurve - Получить указатель на интерфейс динамического массива точек, равномерно расположенных на кривой
Аналог данного метода при использовании API экспортных функций - ksPointsOnCurve. Синтаксис Automation:
LPDISPATCH ksPointsOnCurve (long curve,
long count);
Входные параметры:
curve - указатель на кривую,
count - количество точек.
Возвращаемое значение:
- указатель на интерфейс динамического массива параметров математической точки типа POINT_ARR ksDynamicArray.
Смотрите также: ksMathPointParam
ksPointsOnCurveByStep - Получить массив точек, расположенных на кривой с заданным шагом
Аналог данного метода при использовании API экспортных функций - ksPointsOnCurveByStep. Синтаксис Automation:
LPDISPATCH ksPointsOnCurveByStep (long curve,
double step);
Входные параметры:
curve - указатель на кривую,
step - шаг точек вдоль кривой.
Возвращаемое значение:
- указатель на динамический массив математических точек ksDynamicArray типа POINT_ARR.
ksRotate - Повернуть точку относительно центра
Аналог данного метода при использовании API экспортных функций - Rotate. Синтаксис Automation:
BOOL ksRotate (double x,
double y,
double xc,
double yc,
double ang,
double* xr,
double* yr);
Входные параметры:
x, y - координаты базовой точки,
xс, yс - координаты центра поворота,
ang - угол поворота.
Выходные параметры:
xr, yr - координаты точки после поворота.
Возвращаемое значение:
TRUE - в случае удачного завершения.
ksSinD - Получить синус аргумента
Аналог данного метода при использовании API экспортных функций - SinD. Синтаксис Automation:
double ksSinD (double x);
Входной параметр:
x - угол в градусах.
Возвращаемое значение:
- синус аргумента.
ksSymmetry - Получить координаты точки, симметричной относительно заданной оси
Аналог данного метода при использовании API экспортных функций - Symmetry. Синтаксис Automation:
BOOL ksSymmetry (double x,
double y,
double x1,
double y1,
double x2,
double y2,
double* xc,
double* yc);
Входные параметры:
x, y - координаты базовой точки,
x1, y1 - координаты первой точки на оси симметрии,
x2, y2 - координаты второй точки на оси симметрии.
Выходные параметры:
xc, yc - координаты симметричной точки.
Возвращаемое значение:
TRUE - в случае удачного завершения.
ksTanCircleCircle - Получить координаты точек касания прямых к двум окружностям
Аналог данного метода при использовании API экспортных функций - TanCircleCircle. Синтаксис Automation:
BOOL ksTanCircleCircle (double xc1,
double yc1,
double radius1,
double xc2,
double yc2,
double radius2,
LPDISPATCH param);
Входные параметры:
xc1, yc1 - координаты центра первой окружности,
radius1 - радиус первой окружности,
xc2, yc2 - координаты центра второй окружности,
radius2 - радиус второй окружности.
Выходной параметр:
param - указатель на интерфейс массива координат точек касания ksTAN.
Возвращаемое значение:
TRUE - точки касания обнаружены,
FALSE - точки касания не обнаружены.
ksTanCurvCurv - Получить координаты точек касания прямых к двум кривым
Аналог данного метода при использовании API экспортных функций - ksTanCurvCurv. Синтаксис Automation:
long ksTanCurvCurv (long p1,
long p2,
LPDISPATCH pointArr1,
LPDISPATCH pointArr2);
Входные параметры:
p1 - указатель на первую кривую,
p2 - указатель на вторую кривую.
Выходные параметры:
pointArr1 - динамический массив ksDynamicArray математических точек POINT_ARR на кривой p1,
pointArr2 - динамический массив математических точек ksDynamicArray POINT_ARR на кривой p2.
Возвращаемое значение:
1 - успешное завершение,
0 - построить касательную нельзя (кривые совпадают или одна кривая вложена в другую),
-1 - первый объект не существует,
-2 - второй объект не существует,
-3 - кривые расположены в разных видах,
-4 - не совпадают СК определения кривых (геометрическая и аннотационная),
-5 - первый объект не является кривой,
-6 - второй объект не является кривой,
-7 - ошибка.
ksTanD - Получить тангенс аргумента
Аналог данного метода при использовании API экспортных функций - TanD. Синтаксис Automation:
double ksTanD (double x);
Входной параметр:
x - угол в градусах.
Возвращаемое значение:
- тангенс аргумента.
ksTanLineAngCircle - Получить точки касания окружности и прямой, проходящей под заданным углом
Аналог данного метода при использовании API экспортных функций - TanLineAngCircle. Синтаксис Automation:
BOOL ksTanLineAngCircle (double xc,
double yc,
double rad,
double ang,
LPDISPATCH param);
Входные параметры:
xc, yc - координаты центра окружности,
rad - радиус окружности,
ang - угол касательной прямой.
Выходной параметр:
param - указатель на интерфейс динамического массива параметров математической точки типа POINT_ARR ksDynamicArray.
Возвращаемое значение:
TRUE - точки касания данных объектов обнаружены,
FALSE - точки касания не обнаружены.
Смотрите также: ksMathPointParam
ksTanLinePointCircle - Получить точки касания окружности и прямой, проходящей через заданную точку
Аналог данного метода при использовании API экспортных функций - TanLinePointCircle. Синтаксис Automation:
BOOL ksTanLinePointCircle (double x,
double y,
double xc,
double yc,
double rad,
LPDISPATCH param);
Входные параметры:
x, y - координаты точки,
xc, yc - координаты центра окружности,
rad - радиус окружности.
Выходной параметр:
param - указатель на интерфейс динамического массива параметров математической точки типа POINT_ARR ksDynamicArray.
Возвращаемое значение:
TRUE - точки касания данных объектов обнаружены,
FALSE - точки касания не обнаружены.
Смотрите также: ksMathPointParam
ksTanLinePointCurve - Получить точки касания кривой и прямой, проведенной через заданную точку
Аналог данного метода при использовании API экспортных функций - ksTanLinePointCurve. Синтаксис Automation:
BOOL ksTanLinePointCurve (double x,
double y,
long pCur,
LPDISPATCH param);
Входные параметры:
pCur - указатель на кривую,
x, y - координаты точки.
Выходной параметр:
param - указатель на интерфейс динамического массива ksDynamicArray параметров математической точки типа POINT_ARR.
Возвращаемое значение:
TRUE - точки касания обнаружены,
FALSE - точки касания не обнаружены.
Смотрите также: ksMathPointParam