747 lines
28 KiB
C++
747 lines
28 KiB
C++
//////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Copyright 2016 Autodesk, Inc. All rights reserved.
|
|
//
|
|
// Use of this software is subject to the terms of the Autodesk license
|
|
// agreement provided at the time of installation or download, or which
|
|
// otherwise accompanies this software.
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
#pragma once
|
|
#include "../../Core/Base.h"
|
|
#include "../FusionTypeDefs.h"
|
|
#include <string>
|
|
|
|
// THIS CLASS WILL BE VISIBLE TO AN API CLIENT.
|
|
// THIS HEADER FILE WILL BE GENERATED FROM NIDL.
|
|
#include "../../Core/OSMacros.h"
|
|
|
|
#ifdef FUSIONXINTERFACE_EXPORTS
|
|
# ifdef __COMPILING_ADSK_FUSION_FEATURES_CPP__
|
|
# define ADSK_FUSION_FEATURES_API XI_EXPORT
|
|
# else
|
|
# define ADSK_FUSION_FEATURES_API
|
|
# endif
|
|
#else
|
|
# define ADSK_FUSION_FEATURES_API XI_IMPORT
|
|
#endif
|
|
|
|
namespace adsk { namespace fusion {
|
|
class BaseFeatures;
|
|
class BoundaryFillFeatures;
|
|
class BoxFeatures;
|
|
class ChamferFeatures;
|
|
class CircularPatternFeatures;
|
|
class CoilFeatures;
|
|
class CombineFeatures;
|
|
class CopyPasteBodies;
|
|
class CustomFeatures;
|
|
class CutPasteBodies;
|
|
class CylinderFeatures;
|
|
class DeleteFaceFeatures;
|
|
class DraftFeatures;
|
|
class ExtendFeatures;
|
|
class ExtrudeFeatures;
|
|
class Feature;
|
|
class FilletFeatures;
|
|
class FlangeFeatures;
|
|
class FormFeatures;
|
|
class HoleFeatures;
|
|
class LoftFeatures;
|
|
class MirrorFeatures;
|
|
class MoveFeatures;
|
|
class OffsetFacesFeatures;
|
|
class OffsetFeatures;
|
|
class PatchFeatures;
|
|
class Path;
|
|
class PathPatternFeatures;
|
|
class PipeFeatures;
|
|
class RectangularPatternFeatures;
|
|
class RefoldFeatures;
|
|
class RemoveFeatures;
|
|
class ReplaceFaceFeatures;
|
|
class ReverseNormalFeatures;
|
|
class RevolveFeatures;
|
|
class RibFeatures;
|
|
class RuledSurfaceFeatures;
|
|
class RuleFilletFeatures;
|
|
class ScaleFeatures;
|
|
class ShellFeatures;
|
|
class SilhouetteSplitFeatures;
|
|
class SphereFeatures;
|
|
class SplitBodyFeatures;
|
|
class SplitFaceFeatures;
|
|
class StitchFeatures;
|
|
class SurfaceDeleteFaceFeatures;
|
|
class SweepFeatures;
|
|
class ThickenFeatures;
|
|
class ThreadFeatures;
|
|
class TorusFeatures;
|
|
class TrimFeatures;
|
|
class UnfoldFeatures;
|
|
class UnstitchFeatures;
|
|
class UntrimFeatures;
|
|
class WebFeatures;
|
|
}}
|
|
|
|
namespace adsk { namespace fusion {
|
|
|
|
/// The features collection which provides access to all existing features. This collection
|
|
/// provides direct access to all features regardless of type. It also provides access
|
|
/// to type specific collections where you can get features of a specific type and also create
|
|
/// new features of that type.
|
|
class Features : public core::Base {
|
|
public:
|
|
|
|
/// Function that returns the specified feature using an index into the collection.
|
|
/// index : The index of the item within the collection to return. The first item in the collection has an index of 0.
|
|
/// Returns the specified item or null if an invalid index was specified.
|
|
core::Ptr<Feature> item(size_t index) const;
|
|
|
|
/// Returns the number of bodies in the collection.
|
|
size_t count() const;
|
|
|
|
/// Returns the collection that provides access to the extrude features within the component
|
|
/// and supports the creation of new extrude features.
|
|
core::Ptr<ExtrudeFeatures> extrudeFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the revolve features within the component
|
|
/// and supports the creation of new revolved features.
|
|
core::Ptr<RevolveFeatures> revolveFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the hole features within the component
|
|
/// and supports the creation of new hole features.
|
|
core::Ptr<HoleFeatures> holeFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the fillet features within the component
|
|
/// and supports the creation of new fillet features.
|
|
core::Ptr<FilletFeatures> filletFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the sweep features within the component
|
|
/// and supports the creation of new sweep features.
|
|
core::Ptr<SweepFeatures> sweepFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the chamfer features within the component
|
|
/// and supports the creation of new chamfer features.
|
|
core::Ptr<ChamferFeatures> chamferFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the shell features within the component
|
|
/// and supports the creation of new shell features.
|
|
core::Ptr<ShellFeatures> shellFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the mirror features within the component
|
|
/// and supports the creation of new mirror features.
|
|
core::Ptr<MirrorFeatures> mirrorFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the circular pattern features within the component
|
|
/// and supports the creation of new circular pattern features.
|
|
core::Ptr<CircularPatternFeatures> circularPatternFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the rectangular pattern features within the component
|
|
/// and supports the creation of new rectangular pattern features.
|
|
core::Ptr<RectangularPatternFeatures> rectangularPatternFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the path pattern features within the component
|
|
/// and supports the creation of new path pattern features.
|
|
core::Ptr<PathPatternFeatures> pathPatternFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the combine features within the component
|
|
/// and supports the creation of new combine features.
|
|
core::Ptr<CombineFeatures> combineFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the thread features within the component
|
|
/// and supports the creation of new thread features.
|
|
core::Ptr<ThreadFeatures> threadFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the draft features within the component
|
|
/// and supports the creation of new draft features.
|
|
core::Ptr<DraftFeatures> draftFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the scale features within the component
|
|
/// and supports the creation of new scale features.
|
|
core::Ptr<ScaleFeatures> scaleFeatures() const;
|
|
|
|
/// Method that creates a Path used to define the shape of a Sweep feature. A Path is a contiguous
|
|
/// set of curves that can be a combination of sketch curves and model edges.
|
|
/// curve : A SketchCurve or an ObjectCollection containing multiple sketch entities and/or BRepEdge objects. If a single sketch curve
|
|
/// or edge is input the isChain argument is checked to determine if connected curves (they do not need to be tangent)
|
|
/// should be automatically found. If multiple curves are provided the isChain argument is always
|
|
/// treated as false so you must provide all of the curves in the object collection that you want included in the path.
|
|
/// The provided curves must all connect together in a single path.
|
|
/// The input curves can be from multiple sketches and bodies and they need to geometrically connect for
|
|
/// a valid path to be created.
|
|
/// isChain : Optional argument, that defaults to true. If this argument is set to true, all curves and edges that are end point
|
|
/// connected to the single input curve will be found and used to create the path.
|
|
/// This argument is only used when the first argument is a single SketchCurve/BRepEdge object.
|
|
/// Returns the newly created Path.
|
|
core::Ptr<Path> createPath(const core::Ptr<core::Base>& curve, bool isChain = true);
|
|
|
|
/// Returns the collection that provides access to the replaceFace features within the component
|
|
/// and supports the creation of new replaceFace features.
|
|
core::Ptr<ReplaceFaceFeatures> replaceFaceFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the Move features within the component
|
|
/// and supports the creation of new Move features.
|
|
core::Ptr<MoveFeatures> moveFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the SplitFace features within the component and supports the creation
|
|
/// of new SplitFace features
|
|
core::Ptr<SplitFaceFeatures> splitFaceFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the SplitBody features within the component and supports the creation
|
|
/// of new SplitBody features
|
|
core::Ptr<SplitBodyFeatures> splitBodyFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the Parting Line Split features within the component and supports
|
|
/// the creation of new Parting Line Split features
|
|
core::Ptr<SilhouetteSplitFeatures> silhouetteSplitFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the Offset features within the component
|
|
/// and supports the creation of new Offset features.
|
|
core::Ptr<OffsetFeatures> offsetFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the Extend features within the component
|
|
/// and supports the creation of new Extend features.
|
|
core::Ptr<ExtendFeatures> extendFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the Stitch features within the component
|
|
/// and supports the creation of new Stitch features.
|
|
core::Ptr<StitchFeatures> stitchFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the Boundary Fill features within the component
|
|
/// and supports the creation of new Boundary Fill features.
|
|
core::Ptr<BoundaryFillFeatures> boundaryFillFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the Trim features within the component
|
|
/// and supports the creation of new Trim features.
|
|
core::Ptr<TrimFeatures> trimFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the Thicken features within the component
|
|
/// and supports the creation of new Thicken features.
|
|
core::Ptr<ThickenFeatures> thickenFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the Unstitch features within the component
|
|
/// and supports the creation of new Unstitch features.
|
|
core::Ptr<UnstitchFeatures> unstitchFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the Remove features within the component
|
|
/// and supports the creation of new Remove features.
|
|
core::Ptr<RemoveFeatures> removeFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the existing base features
|
|
/// and supports the creation of new base features. A base feature represents
|
|
/// a body that is non-parametric.
|
|
core::Ptr<BaseFeatures> baseFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the Coil Primitive features within the component.
|
|
core::Ptr<CoilFeatures> coilFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the existing box features.
|
|
core::Ptr<BoxFeatures> boxFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the existing cylinder features.
|
|
core::Ptr<CylinderFeatures> cylinderFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the existing sphere features.
|
|
core::Ptr<SphereFeatures> sphereFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the existing torus features.
|
|
core::Ptr<TorusFeatures> torusFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the existing pipe features.
|
|
core::Ptr<PipeFeatures> pipeFeatues() const;
|
|
|
|
/// Returns the collection that provides access to the existing rib features.
|
|
core::Ptr<RibFeatures> ribFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the existing web features.
|
|
core::Ptr<WebFeatures> webFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the existing form features.
|
|
core::Ptr<FormFeatures> formFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the Reverse Normal features within the component
|
|
/// and supports the creation of new Reverse Normal features.
|
|
core::Ptr<ReverseNormalFeatures> reverseNormalFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the Patch features within the component
|
|
/// and supports the creation of new Patch features.
|
|
core::Ptr<PatchFeatures> patchFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the existing loft features and
|
|
/// supports the creation of new loft features.
|
|
core::Ptr<LoftFeatures> loftFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the existing form features.
|
|
core::Ptr<RuleFilletFeatures> ruleFilletFeatures() const;
|
|
|
|
/// Function that returns the specified feature using the name of the feature.
|
|
/// name : The name of the feature within the collection to return. This is the same name seen in the timeline.
|
|
/// Returns the specified item or null if a feature matching the name was not found.
|
|
core::Ptr<Feature> itemByName(const std::string& name) const;
|
|
|
|
/// Returns the collection that provides access to the existing Surface Delete Face features.
|
|
core::Ptr<SurfaceDeleteFaceFeatures> surfaceDeleteFaceFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the existing Delete Face features.
|
|
core::Ptr<DeleteFaceFeatures> deleteFaceFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the existing Offset Face features.
|
|
core::Ptr<OffsetFacesFeatures> offsetFacesFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the existing copy-paste features
|
|
/// and supports the creation of new copy-paste features.
|
|
core::Ptr<CopyPasteBodies> copyPasteBodies() const;
|
|
|
|
/// Returns the collection that provides access to the existing cut-paste features
|
|
/// and supports the creation of new cut-paste features.
|
|
core::Ptr<CutPasteBodies> cutPasteBodies() const;
|
|
|
|
/// Returns the collection that provides access to the existing flange features.
|
|
core::Ptr<FlangeFeatures> flangeFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the existing unfold features.
|
|
core::Ptr<UnfoldFeatures> unfoldFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the existing refold features.
|
|
core::Ptr<RefoldFeatures> refoldFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the Ruled Surface features within the component
|
|
/// and supports the creation of new Ruled Surface features.
|
|
core::Ptr<RuledSurfaceFeatures> ruledSurfaceFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the custom features within the component
|
|
/// and supports the creation of new custom features.
|
|
core::Ptr<CustomFeatures> customFeatures() const;
|
|
|
|
/// Returns the collection that provides access to the Untrim features within the component
|
|
/// and supports the creation of new Untrim features.
|
|
core::Ptr<UntrimFeatures> untrimFeatures() const;
|
|
|
|
typedef Feature iterable_type;
|
|
template <class OutputIterator> void copyTo(OutputIterator result);
|
|
|
|
ADSK_FUSION_FEATURES_API static const char* classType();
|
|
ADSK_FUSION_FEATURES_API const char* objectType() const override;
|
|
ADSK_FUSION_FEATURES_API void* queryInterface(const char* id) const override;
|
|
ADSK_FUSION_FEATURES_API static const char* interfaceId() { return classType(); }
|
|
|
|
private:
|
|
|
|
// Raw interface
|
|
virtual Feature* item_raw(size_t index) const = 0;
|
|
virtual size_t count_raw() const = 0;
|
|
virtual ExtrudeFeatures* extrudeFeatures_raw() const = 0;
|
|
virtual RevolveFeatures* revolveFeatures_raw() const = 0;
|
|
virtual HoleFeatures* holeFeatures_raw() const = 0;
|
|
virtual FilletFeatures* filletFeatures_raw() const = 0;
|
|
virtual SweepFeatures* sweepFeatures_raw() const = 0;
|
|
virtual ChamferFeatures* chamferFeatures_raw() const = 0;
|
|
virtual ShellFeatures* shellFeatures_raw() const = 0;
|
|
virtual MirrorFeatures* mirrorFeatures_raw() const = 0;
|
|
virtual CircularPatternFeatures* circularPatternFeatures_raw() const = 0;
|
|
virtual RectangularPatternFeatures* rectangularPatternFeatures_raw() const = 0;
|
|
virtual PathPatternFeatures* pathPatternFeatures_raw() const = 0;
|
|
virtual CombineFeatures* combineFeatures_raw() const = 0;
|
|
virtual ThreadFeatures* threadFeatures_raw() const = 0;
|
|
virtual DraftFeatures* draftFeatures_raw() const = 0;
|
|
virtual ScaleFeatures* scaleFeatures_raw() const = 0;
|
|
virtual Path* createPath_raw(core::Base* curve, bool isChain) = 0;
|
|
virtual ReplaceFaceFeatures* replaceFaceFeatures_raw() const = 0;
|
|
virtual MoveFeatures* moveFeatures_raw() const = 0;
|
|
virtual SplitFaceFeatures* splitFaceFeatures_raw() const = 0;
|
|
virtual SplitBodyFeatures* splitBodyFeatures_raw() const = 0;
|
|
virtual SilhouetteSplitFeatures* silhouetteSplitFeatures_raw() const = 0;
|
|
virtual OffsetFeatures* offsetFeatures_raw() const = 0;
|
|
virtual ExtendFeatures* extendFeatures_raw() const = 0;
|
|
virtual StitchFeatures* stitchFeatures_raw() const = 0;
|
|
virtual BoundaryFillFeatures* boundaryFillFeatures_raw() const = 0;
|
|
virtual TrimFeatures* trimFeatures_raw() const = 0;
|
|
virtual ThickenFeatures* thickenFeatures_raw() const = 0;
|
|
virtual UnstitchFeatures* unstitchFeatures_raw() const = 0;
|
|
virtual RemoveFeatures* removeFeatures_raw() const = 0;
|
|
virtual BaseFeatures* baseFeatures_raw() const = 0;
|
|
virtual CoilFeatures* coilFeatures_raw() const = 0;
|
|
virtual BoxFeatures* boxFeatures_raw() const = 0;
|
|
virtual CylinderFeatures* cylinderFeatures_raw() const = 0;
|
|
virtual SphereFeatures* sphereFeatures_raw() const = 0;
|
|
virtual TorusFeatures* torusFeatures_raw() const = 0;
|
|
virtual PipeFeatures* pipeFeatues_raw() const = 0;
|
|
virtual RibFeatures* ribFeatures_raw() const = 0;
|
|
virtual WebFeatures* webFeatures_raw() const = 0;
|
|
virtual FormFeatures* formFeatures_raw() const = 0;
|
|
virtual ReverseNormalFeatures* reverseNormalFeatures_raw() const = 0;
|
|
virtual PatchFeatures* patchFeatures_raw() const = 0;
|
|
virtual LoftFeatures* loftFeatures_raw() const = 0;
|
|
virtual RuleFilletFeatures* ruleFilletFeatures_raw() const = 0;
|
|
virtual Feature* itemByName_raw(const char * name) const = 0;
|
|
virtual SurfaceDeleteFaceFeatures* surfaceDeleteFaceFeatures_raw() const = 0;
|
|
virtual DeleteFaceFeatures* deleteFaceFeatures_raw() const = 0;
|
|
virtual OffsetFacesFeatures* offsetFacesFeatures_raw() const = 0;
|
|
virtual CopyPasteBodies* copyPasteBodies_raw() const = 0;
|
|
virtual CutPasteBodies* cutPasteBodies_raw() const = 0;
|
|
virtual FlangeFeatures* flangeFeatures_raw() const = 0;
|
|
virtual UnfoldFeatures* unfoldFeatures_raw() const = 0;
|
|
virtual RefoldFeatures* refoldFeatures_raw() const = 0;
|
|
virtual RuledSurfaceFeatures* ruledSurfaceFeatures_raw() const = 0;
|
|
virtual CustomFeatures* customFeatures_raw() const = 0;
|
|
virtual UntrimFeatures* untrimFeatures_raw() const = 0;
|
|
};
|
|
|
|
// Inline wrappers
|
|
|
|
inline core::Ptr<Feature> Features::item(size_t index) const
|
|
{
|
|
core::Ptr<Feature> res = item_raw(index);
|
|
return res;
|
|
}
|
|
|
|
inline size_t Features::count() const
|
|
{
|
|
size_t res = count_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<ExtrudeFeatures> Features::extrudeFeatures() const
|
|
{
|
|
core::Ptr<ExtrudeFeatures> res = extrudeFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<RevolveFeatures> Features::revolveFeatures() const
|
|
{
|
|
core::Ptr<RevolveFeatures> res = revolveFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<HoleFeatures> Features::holeFeatures() const
|
|
{
|
|
core::Ptr<HoleFeatures> res = holeFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<FilletFeatures> Features::filletFeatures() const
|
|
{
|
|
core::Ptr<FilletFeatures> res = filletFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<SweepFeatures> Features::sweepFeatures() const
|
|
{
|
|
core::Ptr<SweepFeatures> res = sweepFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<ChamferFeatures> Features::chamferFeatures() const
|
|
{
|
|
core::Ptr<ChamferFeatures> res = chamferFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<ShellFeatures> Features::shellFeatures() const
|
|
{
|
|
core::Ptr<ShellFeatures> res = shellFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<MirrorFeatures> Features::mirrorFeatures() const
|
|
{
|
|
core::Ptr<MirrorFeatures> res = mirrorFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<CircularPatternFeatures> Features::circularPatternFeatures() const
|
|
{
|
|
core::Ptr<CircularPatternFeatures> res = circularPatternFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<RectangularPatternFeatures> Features::rectangularPatternFeatures() const
|
|
{
|
|
core::Ptr<RectangularPatternFeatures> res = rectangularPatternFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<PathPatternFeatures> Features::pathPatternFeatures() const
|
|
{
|
|
core::Ptr<PathPatternFeatures> res = pathPatternFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<CombineFeatures> Features::combineFeatures() const
|
|
{
|
|
core::Ptr<CombineFeatures> res = combineFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<ThreadFeatures> Features::threadFeatures() const
|
|
{
|
|
core::Ptr<ThreadFeatures> res = threadFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<DraftFeatures> Features::draftFeatures() const
|
|
{
|
|
core::Ptr<DraftFeatures> res = draftFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<ScaleFeatures> Features::scaleFeatures() const
|
|
{
|
|
core::Ptr<ScaleFeatures> res = scaleFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<Path> Features::createPath(const core::Ptr<core::Base>& curve, bool isChain)
|
|
{
|
|
core::Ptr<Path> res = createPath_raw(curve.get(), isChain);
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<ReplaceFaceFeatures> Features::replaceFaceFeatures() const
|
|
{
|
|
core::Ptr<ReplaceFaceFeatures> res = replaceFaceFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<MoveFeatures> Features::moveFeatures() const
|
|
{
|
|
core::Ptr<MoveFeatures> res = moveFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<SplitFaceFeatures> Features::splitFaceFeatures() const
|
|
{
|
|
core::Ptr<SplitFaceFeatures> res = splitFaceFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<SplitBodyFeatures> Features::splitBodyFeatures() const
|
|
{
|
|
core::Ptr<SplitBodyFeatures> res = splitBodyFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<SilhouetteSplitFeatures> Features::silhouetteSplitFeatures() const
|
|
{
|
|
core::Ptr<SilhouetteSplitFeatures> res = silhouetteSplitFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<OffsetFeatures> Features::offsetFeatures() const
|
|
{
|
|
core::Ptr<OffsetFeatures> res = offsetFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<ExtendFeatures> Features::extendFeatures() const
|
|
{
|
|
core::Ptr<ExtendFeatures> res = extendFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<StitchFeatures> Features::stitchFeatures() const
|
|
{
|
|
core::Ptr<StitchFeatures> res = stitchFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<BoundaryFillFeatures> Features::boundaryFillFeatures() const
|
|
{
|
|
core::Ptr<BoundaryFillFeatures> res = boundaryFillFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<TrimFeatures> Features::trimFeatures() const
|
|
{
|
|
core::Ptr<TrimFeatures> res = trimFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<ThickenFeatures> Features::thickenFeatures() const
|
|
{
|
|
core::Ptr<ThickenFeatures> res = thickenFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<UnstitchFeatures> Features::unstitchFeatures() const
|
|
{
|
|
core::Ptr<UnstitchFeatures> res = unstitchFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<RemoveFeatures> Features::removeFeatures() const
|
|
{
|
|
core::Ptr<RemoveFeatures> res = removeFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<BaseFeatures> Features::baseFeatures() const
|
|
{
|
|
core::Ptr<BaseFeatures> res = baseFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<CoilFeatures> Features::coilFeatures() const
|
|
{
|
|
core::Ptr<CoilFeatures> res = coilFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<BoxFeatures> Features::boxFeatures() const
|
|
{
|
|
core::Ptr<BoxFeatures> res = boxFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<CylinderFeatures> Features::cylinderFeatures() const
|
|
{
|
|
core::Ptr<CylinderFeatures> res = cylinderFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<SphereFeatures> Features::sphereFeatures() const
|
|
{
|
|
core::Ptr<SphereFeatures> res = sphereFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<TorusFeatures> Features::torusFeatures() const
|
|
{
|
|
core::Ptr<TorusFeatures> res = torusFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<PipeFeatures> Features::pipeFeatues() const
|
|
{
|
|
core::Ptr<PipeFeatures> res = pipeFeatues_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<RibFeatures> Features::ribFeatures() const
|
|
{
|
|
core::Ptr<RibFeatures> res = ribFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<WebFeatures> Features::webFeatures() const
|
|
{
|
|
core::Ptr<WebFeatures> res = webFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<FormFeatures> Features::formFeatures() const
|
|
{
|
|
core::Ptr<FormFeatures> res = formFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<ReverseNormalFeatures> Features::reverseNormalFeatures() const
|
|
{
|
|
core::Ptr<ReverseNormalFeatures> res = reverseNormalFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<PatchFeatures> Features::patchFeatures() const
|
|
{
|
|
core::Ptr<PatchFeatures> res = patchFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<LoftFeatures> Features::loftFeatures() const
|
|
{
|
|
core::Ptr<LoftFeatures> res = loftFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<RuleFilletFeatures> Features::ruleFilletFeatures() const
|
|
{
|
|
core::Ptr<RuleFilletFeatures> res = ruleFilletFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<Feature> Features::itemByName(const std::string& name) const
|
|
{
|
|
core::Ptr<Feature> res = itemByName_raw(name.c_str());
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<SurfaceDeleteFaceFeatures> Features::surfaceDeleteFaceFeatures() const
|
|
{
|
|
core::Ptr<SurfaceDeleteFaceFeatures> res = surfaceDeleteFaceFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<DeleteFaceFeatures> Features::deleteFaceFeatures() const
|
|
{
|
|
core::Ptr<DeleteFaceFeatures> res = deleteFaceFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<OffsetFacesFeatures> Features::offsetFacesFeatures() const
|
|
{
|
|
core::Ptr<OffsetFacesFeatures> res = offsetFacesFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<CopyPasteBodies> Features::copyPasteBodies() const
|
|
{
|
|
core::Ptr<CopyPasteBodies> res = copyPasteBodies_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<CutPasteBodies> Features::cutPasteBodies() const
|
|
{
|
|
core::Ptr<CutPasteBodies> res = cutPasteBodies_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<FlangeFeatures> Features::flangeFeatures() const
|
|
{
|
|
core::Ptr<FlangeFeatures> res = flangeFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<UnfoldFeatures> Features::unfoldFeatures() const
|
|
{
|
|
core::Ptr<UnfoldFeatures> res = unfoldFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<RefoldFeatures> Features::refoldFeatures() const
|
|
{
|
|
core::Ptr<RefoldFeatures> res = refoldFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<RuledSurfaceFeatures> Features::ruledSurfaceFeatures() const
|
|
{
|
|
core::Ptr<RuledSurfaceFeatures> res = ruledSurfaceFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<CustomFeatures> Features::customFeatures() const
|
|
{
|
|
core::Ptr<CustomFeatures> res = customFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
inline core::Ptr<UntrimFeatures> Features::untrimFeatures() const
|
|
{
|
|
core::Ptr<UntrimFeatures> res = untrimFeatures_raw();
|
|
return res;
|
|
}
|
|
|
|
template <class OutputIterator> inline void Features::copyTo(OutputIterator result)
|
|
{
|
|
for (size_t i = 0;i < count();++i)
|
|
{
|
|
*result = item(i);
|
|
++result;
|
|
}
|
|
}
|
|
}// namespace fusion
|
|
}// namespace adsk
|
|
|
|
#undef ADSK_FUSION_FEATURES_API |