# encoding: utf-8
# module vtkmodules.vtkCommonDataModel
# from C:\Users\xukai\Downloads\发票2\venv\Lib\site-packages\vtkmodules\vtkCommonDataModel.cp311-win_amd64.pyd
# by generator 1.147
# no doc

# imports
import vtkmodules.vtkCommonCore as __vtkmodules_vtkCommonCore
import vtkmodules.vtkCommonMath as __vtkmodules_vtkCommonMath
import vtkmodules.vtkCommonTransforms as __vtkmodules_vtkCommonTransforms


from .vtkHigherOrderTriangle import vtkHigherOrderTriangle

class vtkBezierTriangle(vtkHigherOrderTriangle):
    """
    vtkBezierTriangle - A 2D cell that represents an arbitrary order
    Bezier triangle
    
    Superclass: vtkHigherOrderTriangle
    
    vtkBezierTriangle is a concrete implementation of vtkCell to
    represent a 2D triangle using Bezier shape functions of user
    specified order.
    
    The number of points in a Bezier cell determines the order over which
    they are iterated relative to the parametric coordinate system of the
    cell. The first points that are reported are vertices. They appear in
    the same order in which they would appear in linear cells. Mid-edge
    points are reported next. They are reported in sequence. For two- and
    three-dimensional (3D) cells, the following set of points to be
    reported are face points. Finally, 3D cells report points interior to
    their volume.
    """
    def EvaluateLocationProjectedNode(self, subId, point_id, x, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        EvaluateLocationProjectedNode(self, subId:int, point_id:int,
            x:[float, float, float], weights:[float, ...]) -> None
        C++: void EvaluateLocationProjectedNode(int &subId,
            const vtkIdType point_id, double x[3], double *weights)
        """
        pass

    def GetCellType(self): # real signature unknown; restored from __doc__
        """
        GetCellType(self) -> int
        C++: int GetCellType() override;
        
        Return the type of cell.
        """
        return 0

    def GetEdge(self, edgeId): # real signature unknown; restored from __doc__
        """
        GetEdge(self, edgeId:int) -> vtkCell
        C++: vtkCell *GetEdge(int edgeId) override;
        
        Return the edge cell from the edgeId of the cell.
        """
        return vtkCell

    def GetEdgeCell(self): # real signature unknown; restored from __doc__
        """
        GetEdgeCell(self) -> vtkHigherOrderCurve
        C++: vtkHigherOrderCurve *GetEdgeCell() override;
        """
        return vtkHigherOrderCurve

    def GetNumberOfGenerationsFromBase(self, type): # real signature unknown; restored from __doc__
        """
        GetNumberOfGenerationsFromBase(self, type:str) -> int
        C++: vtkIdType GetNumberOfGenerationsFromBase(const char *type)
            override;
        
        Given the name of a base class of this class type, return the
        distance of inheritance between this class type and the named
        class (how many generations of inheritance are there between this
        class and the named class). If the named class is not in this
        class's inheritance tree, return a negative value. Valid
        responses will always be nonnegative. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def GetNumberOfGenerationsFromBaseType(self, type): # real signature unknown; restored from __doc__
        """
        GetNumberOfGenerationsFromBaseType(type:str) -> int
        C++: static vtkIdType GetNumberOfGenerationsFromBaseType(
            const char *type)
        
        Given a the name of a base class of this class type, return the
        distance of inheritance between this class type and the named
        class (how many generations of inheritance are there between this
        class and the named class). If the named class is not in this
        class's inheritance tree, return a negative value. Valid
        responses will always be nonnegative. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def GetRationalWeights(self): # real signature unknown; restored from __doc__
        """
        GetRationalWeights(self) -> vtkDoubleArray
        C++: vtkDoubleArray *GetRationalWeights()
        """
        pass

    def InterpolateDerivs(self, pcoords, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        InterpolateDerivs(self, pcoords:(float, float, float),
            derivs:[float, ...]) -> None
        C++: void InterpolateDerivs(const double pcoords[3],
            double *derivs) override;
        """
        pass

    def InterpolateFunctions(self, pcoords, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        InterpolateFunctions(self, pcoords:(float, float, float),
            weights:[float, ...]) -> None
        C++: void InterpolateFunctions(const double pcoords[3],
            double *weights) override;
        
        Compute the interpolation functions/derivatives (aka shape
        functions/derivatives) No-ops at this level. Typically overridden
        in subclasses.
        """
        pass

    def IsA(self, type): # real signature unknown; restored from __doc__
        """
        IsA(self, type:str) -> int
        C++: vtkTypeBool IsA(const char *type) override;
        
        Return 1 if this class is the same type of (or a subclass of) the
        named class. Returns 0 otherwise. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def IsTypeOf(self, type): # real signature unknown; restored from __doc__
        """
        IsTypeOf(type:str) -> int
        C++: static vtkTypeBool IsTypeOf(const char *type)
        
        Return 1 if this class type is the same type of (or a subclass
        of) the named class. Returns 0 otherwise. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def NewInstance(self): # real signature unknown; restored from __doc__
        """
        NewInstance(self) -> vtkBezierTriangle
        C++: vtkBezierTriangle *NewInstance()
        """
        return vtkBezierTriangle

    def SafeDownCast(self, o): # real signature unknown; restored from __doc__
        """
        SafeDownCast(o:vtkObjectBase) -> vtkBezierTriangle
        C++: static vtkBezierTriangle *SafeDownCast(vtkObjectBase *o)
        """
        return vtkBezierTriangle

    def SetRationalWeightsFromPointData(self, point_data, numPts): # real signature unknown; restored from __doc__
        """
        SetRationalWeightsFromPointData(self, point_data:vtkPointData,
            numPts:int) -> None
        C++: void SetRationalWeightsFromPointData(
            vtkPointData *point_data, const vtkIdType numPts)
        """
        pass

    def __delattr__(self, *args, **kwargs): # real signature unknown
        """ Implement delattr(self, name). """
        pass

    def __getattribute__(self, *args, **kwargs): # real signature unknown
        """ Return getattr(self, name). """
        pass

    def __init__(self, *args, **kwargs): # real signature unknown
        pass

    @staticmethod # known case of __new__
    def __new__(*args, **kwargs): # real signature unknown
        """ Create and return a new object.  See help(type) for accurate signature. """
        pass

    def __repr__(self, *args, **kwargs): # real signature unknown
        """ Return repr(self). """
        pass

    def __setattr__(self, *args, **kwargs): # real signature unknown
        """ Implement setattr(self, name, value). """
        pass

    def __str__(self, *args, **kwargs): # real signature unknown
        """ Return str(self). """
        pass

    __this__ = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default
    """Pointer to the C++ object."""


    __dict__ = None # (!) real value is "mappingproxy({'__vtkname__': 'vtkBezierTriangle', 'IsTypeOf': <method 'IsTypeOf' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, 'IsA': <method 'IsA' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, 'SafeDownCast': <method 'SafeDownCast' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, 'NewInstance': <method 'NewInstance' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, 'GetNumberOfGenerationsFromBaseType': <method 'GetNumberOfGenerationsFromBaseType' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, 'GetNumberOfGenerationsFromBase': <method 'GetNumberOfGenerationsFromBase' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, 'GetCellType': <method 'GetCellType' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, 'GetEdge': <method 'GetEdge' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, 'EvaluateLocationProjectedNode': <method 'EvaluateLocationProjectedNode' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, 'SetRationalWeightsFromPointData': <method 'SetRationalWeightsFromPointData' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, 'InterpolateFunctions': <method 'InterpolateFunctions' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, 'InterpolateDerivs': <method 'InterpolateDerivs' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, 'GetEdgeCell': <method 'GetEdgeCell' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, 'GetRationalWeights': <method 'GetRationalWeights' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, '__new__': <built-in method __new__ of type object at 0x00007FF81D610600>, '__repr__': <slot wrapper '__repr__' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, '__str__': <slot wrapper '__str__' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, '__getattribute__': <slot wrapper '__getattribute__' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, '__setattr__': <slot wrapper '__setattr__' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, '__delattr__': <slot wrapper '__delattr__' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, '__dict__': <attribute '__dict__' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, '__this__': <attribute '__this__' of 'vtkmodules.vtkCommonDataModel.vtkBezierTriangle' objects>, '__doc__': 'vtkBezierTriangle - A 2D cell that represents an arbitrary order\\nBezier triangle\\n\\nSuperclass: vtkHigherOrderTriangle\\n\\nvtkBezierTriangle is a concrete implementation of vtkCell to\\nrepresent a 2D triangle using Bezier shape functions of user\\nspecified order.\\n\\nThe number of points in a Bezier cell determines the order over which\\nthey are iterated relative to the parametric coordinate system of the\\ncell. The first points that are reported are vertices. They appear in\\nthe same order in which they would appear in linear cells. Mid-edge\\npoints are reported next. They are reported in sequence. For two- and\\nthree-dimensional (3D) cells, the following set of points to be\\nreported are face points. Finally, 3D cells report points interior to\\ntheir volume.\\n\\n'})"
    __vtkname__ = 'vtkBezierTriangle'


