SmApiTrimmedSurfaces.h#
Fully qualified name: SM_API/inc/SmApiTrimmedSurfaces.h
File members: SM_API/inc/SmApiTrimmedSurfaces.h
// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// SPDX-License-Identifier: Apache-2.0
/**********************************************************************
FILE NAME: SmApiTrimmedSurfaces.h
PURPOSE:
Contains API-level functions and utilities for creating and
manipulating trimmed surfaces (surface trimming operations,
helpers, and related types).
GENERAL NOTES:
High level functions may assume some input parameters
for ease of use. For maximum flexibility, related functions
can be found in SMLib.
**********************************************************************/
#ifndef __SmApiTrimmedSurfaces_H__
#define __SmApiTrimmedSurfaces_H__
#ifndef __SmApiTypes_H__
#include <SmApiTypes.h>
#endif
#include <SmTArray.h>
class SmContext;
class SmBrep;
class SmSurface;
class SmVector3d;
SMAPI_EXPORT SmApiStatus SmApiTrimSurfaceWith3dCurves(
SmSurface* pSurface,
const SmTArray<ULONG>& crCurveLoops,
const SmTArray<SmCurve*>& cr3DCurves,
SmBrep*& rpResult
);
SMAPI_EXPORT SmApiStatus SmApiTrimProjectParallel(
SmObject* pObject,
SmBSplineCurve* crCurveToProject,
const SmVector3d& crProjectionDirection,
const SmPoint3d & crReferencePoint,
SmTrimType eTrimType,
SmBrep*& rpResult
);
SMAPI_EXPORT SmApiStatus SmApiCreatePlanarFaces(
const SmTArray<SmCurve*>& crPlanarCurves,
SmBrep*& rpResult
);
#endif