import * as Inputs from "../../api/inputs/inputs";
export class OCCTFace {
    constructor(occ, och) {
        this.occ = occ;
        this.och = och;
    }
    createFaceFromWire(inputs) {
        return this.och.facesService.createFaceFromWire(inputs);
    }
    createFaceFromWires(inputs) {
        return this.och.facesService.createFaceFromWires(inputs);
    }
    createFacesFromWires(inputs) {
        return this.och.facesService.createFacesFromWires(inputs);
    }
    faceFromSurface(inputs) {
        return this.och.facesService.faceFromSurface(inputs);
    }
    faceFromSurfaceAndWire(inputs) {
        return this.och.facesService.faceFromSurfaceAndWire(inputs);
    }
    getUMinBound(inputs) {
        return this.och.facesService.getUMinBound(inputs);
    }
    getUMaxBound(inputs) {
        return this.och.facesService.getUMaxBound(inputs);
    }
    getVMinBound(inputs) {
        return this.och.facesService.getVMinBound(inputs);
    }
    getVMaxBound(inputs) {
        return this.och.facesService.getVMaxBound(inputs);
    }
    subdivideToPointsControlled(inputs) {
        return this.och.facesService.subdivideToPointsControlled(inputs);
    }
    subdivideToPoints(inputs) {
        return this.och.facesService.subdivideToPoints(inputs);
    }
    subdivideToNormals(inputs) {
        return this.och.facesService.subdivideToNormals(inputs);
    }
    subdivideToPointsOnParam(inputs) {
        return this.och.facesService.subdivideToPointsOnParam(inputs);
    }
    subdivideToUVOnParam(inputs) {
        return this.och.facesService.subdivideToUVOnParam(inputs);
    }
    subdivideToUV(inputs) {
        return this.och.facesService.subdivideToUV(inputs);
    }
    uvOnFace(inputs) {
        return this.och.facesService.uvOnFace(inputs);
    }
    pointsOnUVs(inputs) {
        return this.och.facesService.pointsOnUVs(inputs);
    }
    normalsOnUVs(inputs) {
        return this.och.facesService.normalsOnUVs(inputs);
    }
    pointOnUV(inputs) {
        return this.och.facesService.pointOnUV(inputs);
    }
    normalOnUV(inputs) {
        return this.och.facesService.faceNormalOnUV(inputs);
    }
    createPolygonFace(inputs) {
        return this.och.facesService.createPolygonFace(inputs);
    }
    createCircleFace(inputs) {
        return this.och.entitiesService.createCircle(inputs.radius, inputs.center, inputs.direction, Inputs.OCCT.typeSpecificityEnum.face);
    }
    createEllipseFace(inputs) {
        return this.och.entitiesService.createEllipse(inputs.radiusMinor, inputs.radiusMajor, inputs.center, inputs.direction, Inputs.OCCT.typeSpecificityEnum.face);
    }
    createSquareFace(inputs) {
        return this.och.facesService.createSquareFace(inputs);
    }
    createRectangleFace(inputs) {
        return this.och.facesService.createRectangleFace(inputs);
    }
    createFaceFromMultipleCircleTanWireCollections(inputs) {
        return this.och.facesService.createFaceFromMultipleCircleTanWireCollections(inputs);
    }
    createFaceFromMultipleCircleTanWires(inputs) {
        return this.och.facesService.createFaceFromMultipleCircleTanWires(inputs);
    }
    getFace(inputs) {
        return this.och.shapeGettersService.getFace(inputs);
    }
    getFaces(inputs) {
        return this.och.shapeGettersService.getFaces(inputs);
    }
    reversedFace(inputs) {
        const face = inputs.shape;
        const reversed = face.Reversed();
        const result = this.och.converterService.getActualTypeOfShape(reversed);
        reversed.delete();
        return result;
    }
    getFaceArea(inputs) {
        return this.och.facesService.getFaceArea(inputs);
    }
    getFacesAreas(inputs) {
        return this.och.facesService.getFacesAreas(inputs);
    }
    getFaceCenterOfMass(inputs) {
        return this.och.facesService.getFaceCenterOfMass(inputs);
    }
    getFacesCentersOfMass(inputs) {
        return this.och.facesService.getFacesCentersOfMass(inputs);
    }
    filterFacePoints(inputs) {
        return this.och.facesService.filterFacePoints(inputs);
    }
}
