@bitbybit-dev/core
Version:
Bit By Bit Developers Core CAD API to Program Geometry
79 lines (78 loc) • 3.3 kB
TypeScript
import { ContextBase } from "../../context";
import { GeometryHelper } from "@bitbybit-dev/base";
import * as Inputs from "../../inputs/inputs";
import { BaseTypes } from "../base-types";
/**
* Functions that allow to intersect various geometric entities and get the results
*/
export declare class VerbIntersect {
private readonly context;
private readonly geometryHelper;
constructor(context: ContextBase, geometryHelper: GeometryHelper);
/**
* Intersects two verb Nurbs curves together and returns intersection results
* @param inputs Two Nurbs curves
* @returns Intersection results
*/
curves(inputs: Inputs.Verb.CurveCurveDto): BaseTypes.CurveCurveIntersection[];
/**
* Intersects curve and surface
* @param inputs Nurbs curve and a Nurbs surface
* @returns Intersection results
*/
curveAndSurface(inputs: Inputs.Verb.CurveSurfaceDto): BaseTypes.CurveSurfaceIntersection[];
/**
* Intersects two surfaces
* @param inputs Nurbs curve and a Nurbs surface
* @returns Nurbs curves along the intersection
*/
surfaces(inputs: Inputs.Verb.SurfaceSurfaceDto): any[];
/**
* Gets intersection parameters on the first curve from curve-curve intersection
* @param inputs Intersections data
* @returns Parameters on first curve
*/
curveCurveFirstParams(inputs: Inputs.Verb.CurveCurveIntersectionsDto): number[];
/**
* Gets intersection parameters on the second curve from curve-curve intersection
* @param inputs Intersections data
* @returns Parameters on second curve
*/
curveCurveSecondParams(inputs: Inputs.Verb.CurveCurveIntersectionsDto): number[];
/**
* Gets intersection points on the first curve from curve-curve intersection
* @param inputs Intersections data
* @returns Points on first curve
*/
curveCurveFirstPoints(inputs: Inputs.Verb.CurveCurveIntersectionsDto): number[][];
/**
* Gets intersection points on the second curve from curve-curve intersection
* @param inputs Intersections data
* @returns Points on second curve
*/
curveCurveSecondPoints(inputs: Inputs.Verb.CurveCurveIntersectionsDto): number[][];
/**
* Gets intersection parameters on the curve from curve-surface intersection
* @param inputs Intersections data
* @returns Parameters on the curve
*/
curveSurfaceCurveParams(inputs: Inputs.Verb.CurveSurfaceIntersectionsDto): number[];
/**
* Gets intersection parameters on the surface from curve-surface intersection
* @param inputs Intersections data
* @returns Parameters on the surface
*/
curveSurfaceSurfaceParams(inputs: Inputs.Verb.CurveSurfaceIntersectionsDto): BaseTypes.UVDto[];
/**
* Gets intersection points on the curve from curve-surface intersection
* @param inputs Intersections data
* @returns Points on the curve
*/
curveSurfaceCurvePoints(inputs: Inputs.Verb.CurveSurfaceIntersectionsDto): number[][];
/**
* Gets intersection points on the surface from curve-surface intersection
* @param inputs Intersections data
* @returns Points on the surface
*/
curveSurfaceSurfacePoints(inputs: Inputs.Verb.CurveSurfaceIntersectionsDto): number[][];
}