geom module

This commit is contained in:
Val Erastov (xibyte) 2020-07-19 22:37:24 -07:00
parent 945a7e27f1
commit e11c1f7f4a
72 changed files with 72 additions and 72 deletions

View file

@ -6,7 +6,7 @@ import curveTess from "../impl/curve/curve-tess";
import Point from 'math/vector';
import Vector from 'math/vector';
import cache from "../impl/cache";
import {Tessellation1D} from "../../../cad/craft/engine/tessellation";
import {Tessellation1D} from "../../../web/app/cad/craft/engine/tessellation";
import {Matrix3x4} from "math/matrix";
import {areEqual} from "math/equality";
import {Vec3} from "math/vec";

View file

@ -1,5 +1,5 @@
import * as vec from 'math/vec';
import {perpendicularVector} from "../../../../../modules/math/euclidean";
import {perpendicularVector} from "../../math/euclidean";
export function frenetFrame(D1, D2) {
let T = vec.normalize(D1);

View file

@ -1,7 +1,7 @@
import * as vec from "math/vec";
import {TOLERANCE, TOLERANCE_SQ} from '../../tolerance';
import {fmin_bfgs} from 'math/optim/bfgs';
import {areEqual} from "../../../../../../modules/math/equality";
import {areEqual} from "../../../math/equality";
export default function curveIntersect(curve1, curve2, isecRange1, isecRange2, tesselator) {

View file

@ -1,5 +1,5 @@
import {Point} from './point'
import {defineIterable} from '../../utils/utils'
import {defineIterable} from '../../web/app/utils/utils'
class Path {

View file

@ -3,7 +3,7 @@ import BBox from "./bbox";
import {TOLERANCE} from "math/equality";
import * as vec from "math/vec";
import {perp2d} from "math/vec";
import {eqTol} from "../../web/app/brep/geom/tolerance";
import {eqTol} from "geom/tolerance";
import {distance} from "math/distance";
import {IDENTITY_BASIS3} from "math/basis";
import Vector from "math/vector";

View file

@ -1,4 +1,4 @@
import {veqXYZ} from '../../web/app/brep/geom/tolerance';
import {veqXYZ} from '../geom/tolerance';
import Vector from './vector';
export default class VectorFactory {

View file

@ -1,5 +1,5 @@
import {Face3, FaceColors, Geometry, Mesh, MeshBasicMaterial, MeshPhongMaterial} from 'three';
import {advancePseudoFrenetFrame, frenetFrame, pseudoFrenetFrame} from '../../../web/app/brep/geom/curves/frenetFrame';
import {advancePseudoFrenetFrame, frenetFrame, pseudoFrenetFrame} from '../../geom/curves/frenetFrame';
import * as vec from 'math/vec';
import {viewScaleFactor} from '../scaleHelper';
import {arrToThree} from 'math/vectorAdapters';

View file

@ -1,13 +1,13 @@
import {Plane} from './geom/impl/plane';
import {Point} from './geom/point';
import {Plane} from '../../../modules/geom/impl/plane';
import {Point} from '../../../modules/geom/point';
import {Shell} from './topo/shell';
import {Face} from './topo/face';
import {Loop} from './topo/loop';
import {Vertex} from './topo/vertex';
import {normalOfCCWSeq} from '../cad/cad-utils';
import BBox from '../../../modules/math/bbox';
import NurbsSurface from './geom/surfaces/nurbsSurface';
import {BrepSurface} from './geom/surfaces/brepSurface';
import NurbsSurface from '../../../modules/geom/surfaces/nurbsSurface';
import {BrepSurface} from '../../../modules/geom/surfaces/brepSurface';
import EdgeIndex from './edgeIndex';
export default class BrepBuilder {

View file

@ -1,12 +1,12 @@
import {Shell} from './topo/shell';
import {Face} from './topo/face';
import {Edge} from './topo/edge';
import BrepCurve from './geom/curves/brepCurve';
import {Plane} from './geom/impl/plane';
import BrepCurve from '../../../modules/geom/curves/brepCurve';
import {Plane} from '../../../modules/geom/impl/plane';
import * as cad_utils from '../cad/cad-utils';
import {createBoundingSurface} from './brep-builder';
import NurbsSurface from './geom/surfaces/nurbsSurface';
import {BrepSurface} from './geom/surfaces/brepSurface';
import NurbsSurface from '../../../modules/geom/surfaces/nurbsSurface';
import {BrepSurface} from '../../../modules/geom/surfaces/brepSurface';
import {Matrix3x4} from 'math/matrix';
import {BasisForPlane} from "math/basis";
import {isCCW as isCCWtest} from "math/euclidean";

View file

@ -1,5 +1,5 @@
import {Point} from './geom/point'
import {Plane} from './geom/impl/plane'
import {Point} from '../../../modules/geom/point'
import {Plane} from '../../../modules/geom/impl/plane'
import {createPrism, enclose} from './brep-enclose'
import {Circle} from '../cad/sketch/sketchModel'
import CSys from 'math/csys';

View file

@ -1,5 +1,5 @@
import {Edge} from './topo/edge';
import BrepCurve from './geom/curves/brepCurve';
import BrepCurve from '../../../modules/geom/curves/brepCurve';
export default class EdgeIndex {

View file

@ -1,14 +1,14 @@
import BrepBuilder, {createBoundingSurfaceFrom2DPoints, createBoundingSurfaceFromBBox} from '../brep-builder';
import VertexFactory from '../vertexFactory';
import NurbsSurface from '../geom/surfaces/nurbsSurface';
import NurbsSurface from '../../../../modules/geom/surfaces/nurbsSurface';
import * as vec from 'math/vec';
import {BrepSurface} from '../geom/surfaces/brepSurface';
import {Plane} from '../geom/impl/plane';
import {BrepSurface} from '../../../../modules/geom/surfaces/brepSurface';
import {Plane} from '../../../../modules/geom/impl/plane';
import Vector from '../../../../modules/math/vector';
import NullSurface from '../geom/surfaces/nullSurface';
import NullSurface from '../../../../modules/geom/surfaces/nullSurface';
import BBox from 'math/bbox';
import NurbsCurve from '../geom/curves/nurbsCurve';
import BrepCurve from '../geom/curves/brepCurve';
import NurbsCurve from '../../../../modules/geom/curves/nurbsCurve';
import BrepCurve from '../../../../modules/geom/curves/brepCurve';
import {BREPData} from "../../cad/craft/engine/brepData";
export function readBrep(data: BREPData) {

View file

@ -4,7 +4,7 @@ import {Loop} from '../topo/loop';
import {Shell} from '../topo/shell';
import {Vertex} from '../topo/vertex';
import {evolveFace} from './evolve-face'
import {eqTol, TOLERANCE, ueq, veq, veqNeg} from '../geom/tolerance';
import {eqTol, TOLERANCE, ueq, veq, veqNeg} from '../../../../modules/geom/tolerance';
import CadError from "../../utils/errors";
import {createBoundingSurface} from "../brep-builder";
import BREP_DEBUG from '../debug/brep-debug';

View file

@ -5,7 +5,7 @@ import {Loop} from '../topo/loop'
import {Face} from '../topo/face'
import {BREPValidator} from '../brep-validator';
import {linkSegments} from '../brep-builder';
import {Line} from '../geom/impl/line'
import {Line} from '../../../../modules/geom/impl/line'
export function polyhedronify(shell) {
shell.reindexVertices();

View file

@ -1,6 +1,6 @@
import {TopoObject} from './topo-object'
import {Vertex} from "./vertex";
import BrepCurve from "../geom/curves/brepCurve";
import BrepCurve from "../../../../modules/geom/curves/brepCurve";
import {Loop} from "./loop";
import Vector from "math/vector";
import {Tessellation1D} from "../../cad/craft/engine/tessellation";

View file

@ -1,9 +1,9 @@
import {TopoObject} from './topo-object'
import {Loop} from './loop'
import PIP from '../../cad/tess/pip';
import {veq} from "../geom/tolerance";
import {veq} from "geom/tolerance";
import {isOnPositiveHalfPlaneFromVec} from "../operations/boolean";
import {BrepSurface} from "../geom/surfaces/brepSurface";
import {BrepSurface} from "../../../../modules/geom/surfaces/brepSurface";
import {Shell} from "./shell";
import {ProductionInfo} from "../../cad/craft/engine/productionInfo";

View file

@ -1,6 +1,6 @@
import {TopoObject} from './topo-object'
import {Face} from "./face";
import {BrepSurface} from "../geom/surfaces/brepSurface";
import {BrepSurface} from "../../../../modules/geom/surfaces/brepSurface";
import {HalfEdge} from "./edge";
import {findLowestLeftPoint} from "math/euclidean";

View file

@ -1,5 +1,5 @@
import pertrub from './vector-petrub';
import BrepCurve from '../geom/curves/brepCurve';
import BrepCurve from '../../../../modules/geom/curves/brepCurve';
export class Ray {

View file

@ -1,6 +1,6 @@
import {Vertex} from './topo/vertex';
import {veqXYZ} from './geom/tolerance';
import {Point} from './geom/point';
import {veqXYZ} from '../../../modules/geom/tolerance';
import {Point} from '../../../modules/geom/point';
export default class VertexFactory {

View file

@ -1,6 +1,6 @@
import Vector from "math/vector";
import { FaceTouchAlignConstraint } from "../constraints/faceTouchAlign";
import { Plane } from './../../../brep/geom/impl/plane';
import { Plane } from '../../../../../modules/geom/impl/plane';
import { AssemblyDOF, ModificationResponse } from "./assemblyDOF";
import { ConflictDOF } from './conflictDOF';
import {EdgeAlignConstraint} from "../constraints/edgeAlign";

View file

@ -1,7 +1,7 @@
import Vector, {ORIGIN} from "math/vector";
import {eqTol} from "../../../brep/geom/tolerance";
import {eqTol} from "geom/tolerance";
import {FaceTouchAlignConstraint} from "../constraints/faceTouchAlign";
import {Plane} from './../../../brep/geom/impl/plane';
import {Plane} from '../../../../../modules/geom/impl/plane';
import {ANGULAR_ALLOWANCE, AssemblyDOF, ModificationResponse} from "./assemblyDOF";
import {clamp, DEG_RAD} from "math/commons";
import {ConflictDOF} from "./conflictDOF";

View file

@ -1,6 +1,6 @@
import Vector from "math/vector";
import { FaceTouchAlignConstraint } from "../constraints/faceTouchAlign";
import { Plane } from './../../../brep/geom/impl/plane';
import { Plane } from '../../../../../modules/geom/impl/plane';
import { AssemblyDOF, ModificationResponse } from "./assemblyDOF";
import { ConflictDOF } from './conflictDOF';
import {EdgeAlignConstraint} from "../constraints/edgeAlign";

View file

@ -1,6 +1,6 @@
import Vector from "math/vector";
import { FaceTouchAlignConstraint } from "../constraints/faceTouchAlign";
import { Plane } from './../../../brep/geom/impl/plane';
import { Plane } from '../../../../../modules/geom/impl/plane';
import { AssemblyDOF, ModificationResponse } from "./assemblyDOF";
import { ConflictDOF } from './conflictDOF';
import {EdgeAlignConstraint} from "../constraints/edgeAlign";

View file

@ -1,4 +1,4 @@
import { Plane } from './../../../brep/geom/impl/plane';
import { Plane } from '../../../../../modules/geom/impl/plane';
import {AssemblyDOF, ModificationResponse} from "./assemblyDOF";
import Vector, {ORIGIN} from "math/vector";
import {FaceTouchAlignConstraint} from "../constraints/faceTouchAlign";

View file

@ -1,6 +1,6 @@
import {getEncloseDetails, resolveExtrudeVector} from './cutExtrude';
import {curveTessParams} from "../../../brep/geom/impl/curve/curve-tess";
import {curveTessParams} from "../../../../../modules/geom/impl/curve/curve-tess";
import Vector from "math/vector";
import {TriangulatePolygons} from "../../tess/triangulation";
import {createMeshGeometry} from "scene/geoms";

View file

@ -1,5 +1,5 @@
import {createMeshGeometry} from 'scene/geoms';
import {Plane} from '../../../../brep/geom/impl/plane';
import {Plane} from '../../../../../../modules/geom/impl/plane';
import Vector from 'math/vector';
import PlaneWizard from './PlaneWizard';
import {MOpenFaceShell} from '../../../model/mopenFace';

View file

@ -1,5 +1,5 @@
import {createMeshGeometry} from 'scene/geoms';
import {Plane} from '../../../../brep/geom/impl/plane';
import {Plane} from '../../../../../../modules/geom/impl/plane';
import Vector from 'math/vector';
import PlaneWizard from './SimplePlaneWizard';
import {MOpenFaceShell} from '../../../model/mopenFace';

View file

@ -7,7 +7,7 @@ import * as vec from 'math/vec';
import React from 'react';
import {readSketchFloat} from './sketch/sketchReader';
import {toLoops} from '../brep/io/brepLoopsFormat';
import curveTess from '../brep/geom/impl/curve/curve-tess';
import curveTess from '../../../modules/geom/impl/curve/curve-tess';
import {LOG_FLAGS} from './logFlags';
import {state} from "lstream";

View file

@ -9,13 +9,13 @@ import {Loop} from '../../brep/topo/loop';
import {Face} from '../../brep/topo/face';
import {Shell} from '../../brep/topo/shell';
import {Vertex} from '../../brep/topo/vertex';
import {Point} from '../../brep/geom/point';
import BrepCurve from '../../brep/geom/curves/brepCurve';
import {Plane} from '../../brep/geom/impl/plane';
import {Point} from '../../../../modules/geom/point';
import BrepCurve from '../../../../modules/geom/curves/brepCurve';
import {Plane} from '../../../../modules/geom/impl/plane';
import pip from '../tess/pip';
import {readShellEntityFromJson} from '../scene/wrappers/entityIO';
import * as vec from 'math/vec'
import NurbsSurface from '../../brep/geom/surfaces/nurbsSurface';
import NurbsSurface from '../../../../modules/geom/surfaces/nurbsSurface';
export default {

View file

@ -1,6 +1,6 @@
import {createBoundingSurfaceFrom2DPoints} from '../../brep/brep-builder';
import NurbsSurface from '../../brep/geom/surfaces/nurbsSurface';
import {BrepSurface} from '../../brep/geom/surfaces/brepSurface';
import NurbsSurface from '../../../../modules/geom/surfaces/nurbsSurface';
import {BrepSurface} from '../../../../modules/geom/surfaces/brepSurface';
export class SurfacePrototype {

View file

@ -1,9 +1,9 @@
import BrepBuilder from '../brep/brep-builder'
import * as BREPPrimitives from '../brep/brep-primitives'
import BrepCurve from '../brep/geom/curves/brepCurve';
import NurbsCurve from "../brep/geom/curves/nurbsCurve";
import {surfaceIntersect} from '../brep/geom/intersection/surfaceSurface';
import NurbsSurface from '../brep/geom/surfaces/nurbsSurface';
import BrepCurve from '../../../modules/geom/curves/brepCurve';
import NurbsCurve from "../../../modules/geom/curves/nurbsCurve";
import {surfaceIntersect} from '../../../modules/geom/intersection/surfaceSurface';
import NurbsSurface from '../../../modules/geom/surfaces/nurbsSurface';
import {createOctreeFromSurface, traverseOctree} from "../../../modules/voxels/octree";
import {Matrix3x4} from 'math/matrix';
import {AXIS, ORIGIN} from "../../../modules/math/vector";

View file

@ -1,7 +1,7 @@
import Vector from 'math/vector';
import {SceneEdge, SceneFace, SceneSolid} from './sceneObject';
import brepTess from '../../tess/brep-tess';
import tessellateSurface from '../../../brep/geom/surfaces/surfaceTess';
import tessellateSurface from '../../../../../modules/geom/surfaces/surfaceTess';
import {setAttribute} from '../../../../../modules/scene/objectData';
import * as vec from 'math/vec';
import {perpendicularVector} from "math/euclidean";

View file

@ -1,8 +1,8 @@
import * as vec from 'math/vec';
import {iteratePath} from '../cad-utils';
import NurbsCurve from '../../brep/geom/curves/nurbsCurve';
import {veqXYZ} from '../../brep/geom/tolerance';
import curveTess, {curveTessParams} from '../../brep/geom/impl/curve/curve-tess';
import NurbsCurve from '../../../../modules/geom/curves/nurbsCurve';
import {veqXYZ} from '../../../../modules/geom/tolerance';
import curveTess, {curveTessParams} from '../../../../modules/geom/impl/curve/curve-tess';
import {distanceAB} from "math/distance";
import {areEqual, TOLERANCE} from "math/equality";
import {circleFromPoints, radiusOfCurvature} from "../../../../modules/math/euclidean";

View file

@ -1,8 +1,8 @@
import verb from 'verb-nurbs'
import BrepCurve from '../../brep/geom/curves/brepCurve';
import NurbsCurve from '../../brep/geom/curves/nurbsCurve';
import BrepCurve from '../../../../modules/geom/curves/brepCurve';
import NurbsCurve from '../../../../modules/geom/curves/nurbsCurve';
import {makeAngle0_360} from '../../../../modules/math/commons'
import {normalizeCurveEnds} from '../../brep/geom/impl/nurbs-ext';
import {normalizeCurveEnds} from '../../../../modules/geom/impl/nurbs-ext';
import Vector from '../../../../modules/math/vector';
import CSys from "../../../../modules/math/csys";
import {distanceAB} from "../../../../modules/math/distance";

View file

@ -1,7 +1,7 @@
import Vector from 'math/vector';
import ClipperLib from 'clipper-lib';
import libtess from 'libtess'
import tessellateSurface from '../../brep/geom/surfaces/surfaceTess';
import tessellateSurface from '../../../../modules/geom/surfaces/surfaceTess';
export default function A(face) {
return tessellateLoopsOnSurface(face.surface, face.loops, loop => loop, seg => e.edge.curve, seg => seg.inverted)

View file

@ -1,5 +1,5 @@
import libtess from 'libtess'
import {Point} from '../../brep/geom/point'
import {Point} from '../../../../modules/geom/point'
import {Vertex} from '../../brep/topo/vertex'
import Vector from 'math/vector';

View file

@ -25,7 +25,7 @@ export default [
kind: 'Tool',
description: 'Add a point',
icon: PointToolIcon,
command: 'point',
command: 'geom.point',
invoke: (ctx) => {
ctx.viewer.toolManager.takeControl(new AddPointTool(ctx.viewer));

View file

@ -2,9 +2,9 @@ import {Param} from '../shapes/param';
import {DEG_RAD, makeAngle0_360} from "math/commons";
import {COS_FN, Polynomial, POW_1_FN, POW_2_FN, POW_3_FN, SIN_FN} from "./polynomial";
import {cubicBezierDer1, cubicBezierDer2, cubicBezierPoint} from "../../brep/geom/curves/bezierCubic";
import {cubicBezierDer1, cubicBezierDer2, cubicBezierPoint} from "../../../../modules/geom/curves/bezierCubic";
import {greaterThanConstraint, lessThanConstraint} from "./barriers";
import {genericCurveStep} from "../../brep/geom/impl/nurbs-ext";
import {genericCurveStep} from "../../../../modules/geom/impl/nurbs-ext";
import {_normalize} from "math/vec";
import {
AngleBetweenConstraintIcon,

View file

@ -1,5 +1,5 @@
import {prepare} from "./solver";
import {eqEps} from "../../brep/geom/tolerance";
import {eqEps} from "geom/tolerance";
import {Polynomial, POW_1_FN} from "./polynomial";
import {compositeFn} from "gems/func";
import {AlgNumConstraint} from "./ANConstraints";

View file

@ -1,4 +1,4 @@
import {eqEps} from "../../brep/geom/tolerance";
import {eqEps} from "geom/tolerance";
import {compositeFn} from "gems/func";
import {SolverParam} from "./solverParam";

View file

@ -2,7 +2,7 @@ import {NoIcon} from "../icons/NoIcon";
import {Arc} from "../shapes/arc";
import {Circle} from "../shapes/circle";
import {NurbsObject} from "../shapes/nurbsObject";
import NurbsCurve from "../../brep/geom/curves/nurbsCurve";
import NurbsCurve from "../../../../modules/geom/curves/nurbsCurve";
import {Segment} from "../shapes/segment";
export const BoundaryGeneratorSchema = {

View file

@ -4,7 +4,7 @@ import {Arc} from "../shapes/arc";
import {EndPoint} from "../shapes/point";
import {Circle} from "../shapes/circle";
import {NurbsObject} from "../shapes/nurbsObject";
import NurbsCurve from "../../brep/geom/curves/nurbsCurve";
import NurbsCurve from "../../../../modules/geom/curves/nurbsCurve";
import {Segment} from "../shapes/segment";
export const GroundObjectsGeneratorSchema = {

View file

@ -1,6 +1,6 @@
import {SketchObject} from './sketch-object'
import * as vec from 'math/vec';
import {curveTessellate} from '../../brep/geom/impl/nurbs-ext';
import {curveTessellate} from '../../../../modules/geom/impl/nurbs-ext';
import {Ellipse} from "./ellipse";
import {EndPoint} from "./point";

View file

@ -4,7 +4,7 @@ import {Tool} from './tool'
export class AddPointTool extends Tool {
constructor(viewer) {
super('point', viewer);
super('geom.point', viewer);
}
restart() {

View file

@ -85,7 +85,7 @@ export class AddSegmentTool extends Tool {
firstPointPicked() {
this.pointPicked(this.line.a.x, this.line.a.y);
this.sendHint('specify ' + (this.multi ? 'next' : 'end') +' point');
this.sendHint('specify ' + (this.multi ? 'next' : 'end') +' geom.point');
}
dblclick(e) {