IAxiBase Interface
- GetCrossPosition
 
- SetCrossPosition
 
- GetCount
 
- GetKnotValue
 
- SetKnotValue
 
 
IAxiBase interface allows modification of array
of Base Knots and the current Cross-section position
(current z-axis position) in the object. Changing of a knot position will make
the object stretched or contracted.  
Note that IAxiBase does not
allow deleting or inserting knots into the Axial Base. To insert a new knot into the
Base obtain IArray interface from IAxiBase and call its
InsertAt method. 
(See also StripTopol programming sample). 
Obtaining IArray managing Axial Base knots via
ISection->IAxiBase->IArray is a context-dependent
query. It means that between two steps ISection->IAxiBase and
IAxiBase->IArray there must not be any other queries from the ISection
interface. 
See also 
Patch Tutorial, MiniCAD Sample, 
Interface List. 
 
HRESULT GetCrossPosition(double *pz)  
Parameters 
- 
pz 
- [out] pointer to a double variable to hold the output.
  
 - Return 
  Values 
  
 
    - 
  S_OK in case of success
     
  DISP_E_PARAMNOTOPTIONAL - if pz is NULL.
   -     
  
Remarks 
             
        Returns current cross 
  position of the 
  object. 
   
    -            
   
 
 
          
HRESULT SetCrossPosition(double z)      
Parameters 
z -   [in] new cross position.  
Return Values  
- 
  
 - S_OK  - in 
  case of success. 
  
 -  
      
  
 -  
     
  
 -     
  
 - DISP_E_PARAMNOTOPTIONAL - if z value is outside of the current z-range of the model. 
  
 -             
       
  
 - Remarks 
  
 -   
  
 - Use this function to set current cross 
  position, so that following parameters modifications will be made in cross plane at z position.
   
 
 
            
HRESULT GetCount(int *pnCount)   
Parameters 
pnCount - [out] pointer to the variable
which will receive number of axial knots in the object.  
Return Values 
S_OK in case of success.  
Remarks 
  
Call to determine number of knots in the base. 
   
   
HRESULT GetKnotValue(int knot, double *pz) 
Parameters 
knot - [in] index of the knot to 
retrieve.  
pz - [out] pointer to the double variable, which will hold the returned knot 
position. 
   
Return Values 
S_OK in case of success  
TYPE_E_ELEMENTNOTFOUND  - in case knot is 
out of the valid range. 
DISP_E_PARAMNOTOPTIONAL - pz is NULL. 
- Remarks 
 
-    Call this method to obtain position of a 
particular knot in the base.
 
-      
 
 
 
HRESULT SetKnotValue(int knot, double z) 
Parameters 
knot - [in] index of the knot to set.  
z - [in] new position of the knot 
Return Values 
S_OK in case of success  
TYPE_E_ELEMENTNOTFOUND - in case knot is out range. 
    
- 
DI_E_INVALIDGEOMETRY - when new position is out of the valid 
range. See remarks.
 
- Remarks 
 
-   
 
-  
 
-  
 
- Call this method to set position of a particular knot in the base. To be valid, z must be such 
that resulting array is increasing and none of the knot values coincide with each other.
  Between two calls for this method, which implemented by the same object (it was
  obtained from the same ISection interface), there should be a call for
  UpdateSurface
method of DG Kernel control or call for Update method of IModel interface. 
 
 
                 |