parameters: (self, obj)
return_statement: return super(Array, self).buildShape(obj, pl, pls)
docstring: Execute when the object is created or recomputed.
docstring_summary: Execute when the object is created or recomputed.
docstring_tokens: Execute when the object is created or recomputed .
function: def execute(self, obj):
          """Execute when the object is created or recomputed."""
          if not obj.Base:
              return
  
          pl = obj.Placement
          axis = obj.Axis
          center = obj.Center
  
          if hasattr(obj, "AxisReference") and obj.AxisReference:
              if hasattr(obj.AxisReference, "Placement"):
                  reference = obj.AxisReference.Placement
                  axis = reference.Rotation * App.Vector(0, 0, 1)
                  center = reference.Base
              else:
                  _info = ("'AxisReference' has no 'Placement' property. "
                           "Please select a different object to use as "
                           "reference.")
                  raise TypeError(_info)
  
          if obj.ArrayType == "ortho":
              pls = rect_placements(obj.Base.Placement,
                                    obj.IntervalX,
                                    obj.IntervalY,
                                    obj.IntervalZ,
                                    obj.NumberX,
                                    obj.NumberY,
                                    obj.NumberZ)
          elif obj.ArrayType == "polar":
              av = obj.IntervalAxis if hasattr(obj, "IntervalAxis") else None
              pls = polar_placements(obj.Base.Placement,
                                     center, obj.Angle.Value,
                                     obj.NumberPolar, axis, av)
          elif obj.ArrayType == "circular":
              pls = circ_placements(obj.Base.Placement,
                                    obj.RadialDistance,
                                    obj.TangentialDistance,
                                    axis, center,
                                    obj.NumberCircles, obj.Symmetry)
  
          return super(Array, self).buildShape(obj, pl, pls)
function_tokens: def execute ( self , obj ) : if not obj . Base : return pl = obj . Placement axis = obj . Axis center = obj . Center if hasattr ( obj , "AxisReference" ) and obj . AxisReference : if hasattr ( obj . AxisReference , "Placement" ) : reference = obj . AxisReference . Placement axis = reference . Rotation * App . Vector ( 0 , 0 , 1 ) center = reference . Base else : _info = ( "'AxisReference' has no 'Placement' property. " "Please select a different object to use as " "reference." ) raise TypeError ( _info ) if obj . ArrayType == "ortho" : pls = rect_placements ( obj . Base . Placement , obj . IntervalX , obj . IntervalY , obj . IntervalZ , obj . NumberX , obj . NumberY , obj . NumberZ ) elif obj . ArrayType == "polar" : av = obj . IntervalAxis if hasattr ( obj , "IntervalAxis" ) else None pls = polar_placements ( obj . Base . Placement , center , obj . Angle . Value , obj . NumberPolar , axis , av ) elif obj . ArrayType == "circular" : pls = circ_placements ( obj . Base . Placement , obj . RadialDistance , obj . TangentialDistance , axis , center , obj . NumberCircles , obj . Symmetry ) return super ( Array , self ) . buildShape ( obj , pl , pls )