xsi_envelope.h Source File
 
 
 
xsi_envelope.h
Go to the documentation of this file.
00001 //*****************************************************************************
00011 //*****************************************************************************
00012 
00013 #if (_MSC_VER > 1000) || defined(SGI_COMPILER)
00014 #pragma once
00015 #endif
00016 
00017 #ifndef __XSIENVELOPE_H__
00018 #define __XSIENVELOPE_H__
00019 
00020 #include <xsi_operator.h>
00021 #include <xsi_doublearray.h>
00022 #include <xsi_cluster.h>
00023 #include <xsi_clusterproperty.h>
00024 
00025 namespace XSI {
00026 
00027 struct CColor;
00028 
00029 //*****************************************************************************
00047 //*****************************************************************************
00048 class SICPPSDKDECL Envelope : public Operator
00049 {
00050 public:
00052         Envelope();
00053 
00055         ~Envelope();
00056 
00060         Envelope(const CRef& in_ref);
00061 
00065         Envelope(const Envelope& in_obj);
00066 
00071         bool IsA( siClassID in_ClassID) const;
00072 
00076         siClassID GetClassID() const;
00077 
00083         Envelope& operator=(const Envelope& in_obj);
00084 
00090         Envelope& operator=(const CRef& in_ref);
00091 
00102         CRefArray GetDeformers() const;
00103 
00186         CClusterPropertyElementArray GetWeights( double in_dFrame ) const;
00187 
00192         CClusterElementArray GetElements( double in_dFrame ) const;
00193 
00200         CDoubleArray GetDeformerWeights( const X3DObject &in_Deformer, double in_dFrame ) const;
00201 
00275         CStatus SetDeformerWeights( X3DObject &in_Deformer,     const CDoubleArray &in_Array );
00276 
00284         CStatus GetDeformerColor( const X3DObject &in_Deformer, CColor &io_Color ) const;
00285 
00293         CStatus SetDeformerColor( const X3DObject &in_Deformer, const CColor &in_Color );
00294 
00373         CStatus SetDeformerWeights2( X3DObject &in_Deformer, const CDoubleArray &in_Array );
00374 
00375 private:
00376         Envelope * operator&() const;
00377         Envelope * operator&();
00378 };
00379 
00380 };
00381 
00382 #endif // __XSIENVELOPE_H__