⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 samp5.c

📁 Pro.TOOLKIT.Wildfire插件设计.配套光盘-141M.zip
💻 C
📖 第 1 页 / 共 2 页
字号:
  value_data.type = PRO_VALUE_TYPE_SELECTION;
  value_data.v.r = p_select[0];
  status = ProValueAlloc ( &value );
  status = ProValueDataSet ( value, &value_data );
  status = ProElementValueSet ( pro_e_csys_origin_constr_ref, value );
  status = ProElemtreeElementAdd ( pro_e_csys_origin_constr, NULL, 
                                   pro_e_csys_origin_constr_ref );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_OFFSET_TYPE
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_OFFSET_TYPE *** " );
  status = ProElementAlloc ( PRO_E_CSYS_OFFSET_TYPE,
                             &pro_e_csys_offset_type );
  value_data.type = PRO_VALUE_TYPE_INT;
  value_data.v.i = 0;
  status = ProValueAlloc ( &value );
  status = ProValueDataSet ( value, &value_data );
  status = ProElementValueSet ( pro_e_csys_offset_type, value );
  status = ProElemtreeElementAdd ( pro_e_feature_tree, NULL,
                                   pro_e_csys_offset_type );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVES *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVES,
                             &pro_e_csys_orientmoves );
  status = ProElemtreeElementAdd ( pro_e_feature_tree, NULL, 
                                   pro_e_csys_orientmoves  );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE,
                             &pro_e_csys_orientmove );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmoves, NULL, 
                                   pro_e_csys_orientmove  );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
                           -> PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE, 
                             &pro_e_csys_orientmove_move_type );
  value_data.type = PRO_VALUE_TYPE_INT;
  value_data.v.i = PRO_CSYS_ORIENTMOVE_MOVE_OPT_ROT_X; /* 3 */ 
  status = ProValueAlloc ( &value );
  status = ProValueDataSet ( value, &value_data );
  status = ProElementValueSet ( pro_e_csys_orientmove_move_type, value );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmove, NULL, 
                                   pro_e_csys_orientmove_move_type );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
                           -> PRO_E_CSYS_ORIENTMOVE_MOVE_VAL
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE_MOVE_VAL *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE_MOVE_VAL, 
                             &pro_e_csys_orientmove_move_val );
  value_data.type = PRO_VALUE_TYPE_DOUBLE;
  value_data.v.d = 0.000000;
  status = ProValueAlloc ( &value );
  status = ProValueDataSet ( value, &value_data );
  status = ProElementValueSet ( pro_e_csys_orientmove_move_val, value );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmove, NULL, 
                                   pro_e_csys_orientmove_move_val );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE, &pro_e_csys_orientmove );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmoves, NULL, 
                                   pro_e_csys_orientmove  );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
                           -> PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE, 
                             &pro_e_csys_orientmove_move_type );
  value_data.type = PRO_VALUE_TYPE_INT;
  value_data.v.i = PRO_CSYS_ORIENTMOVE_MOVE_OPT_ROT_Y; /* 4 */ 
  status = ProValueAlloc ( &value );
  status = ProValueDataSet ( value, &value_data );
  status = ProElementValueSet ( pro_e_csys_orientmove_move_type, value );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmove, NULL, 
                                   pro_e_csys_orientmove_move_type );

  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
                           -> PRO_E_CSYS_ORIENTMOVE_MOVE_VAL
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE_MOVE_VAL *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE_MOVE_VAL, 
                             &pro_e_csys_orientmove_move_val );
  value_data.type = PRO_VALUE_TYPE_DOUBLE;
  value_data.v.d = -80.000000;
  status = ProValueAlloc ( &value );
  status = ProValueDataSet ( value, &value_data );
  status = ProElementValueSet ( pro_e_csys_orientmove_move_val, value );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmove, NULL, 
                                   pro_e_csys_orientmove_move_val );

  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE, &pro_e_csys_orientmove );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmoves, NULL, 
                                   pro_e_csys_orientmove  );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
                           -> PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE, 
                &pro_e_csys_orientmove_move_type );
  value_data.type = PRO_VALUE_TYPE_INT;
  value_data.v.i = PRO_CSYS_ORIENTMOVE_MOVE_OPT_ROT_Z; /* 5 */ 
  status = ProValueAlloc ( &value );
  status = ProValueDataSet ( value, &value_data );
  status = ProElementValueSet ( pro_e_csys_orientmove_move_type, value );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmove, NULL, 
                                   pro_e_csys_orientmove_move_type );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
                           -> PRO_E_CSYS_ORIENTMOVE_MOVE_VAL
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE_MOVE_VAL *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE_MOVE_VAL, 
                             &pro_e_csys_orientmove_move_val );
  value_data.type = PRO_VALUE_TYPE_DOUBLE;
  value_data.v.d = 0.000000;
  status = ProValueAlloc ( &value );
  status = ProValueDataSet ( value, &value_data );
  status = ProElementValueSet ( pro_e_csys_orientmove_move_val, value );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmove, NULL, 
                                   pro_e_csys_orientmove_move_val );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE, &pro_e_csys_orientmove );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmoves, NULL, 
                                   pro_e_csys_orientmove  );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
                           -> PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE, 
                             &pro_e_csys_orientmove_move_type );
  value_data.type = PRO_VALUE_TYPE_INT;
  value_data.v.i = PRO_CSYS_ORIENTMOVE_MOVE_OPT_TRAN_X; /* 0 */ 
  status = ProValueAlloc ( &value );
  status = ProValueDataSet ( value, &value_data );
  status = ProElementValueSet ( pro_e_csys_orientmove_move_type, value );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmove, NULL, 
                                   pro_e_csys_orientmove_move_type );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
                           -> PRO_E_CSYS_ORIENTMOVE_MOVE_VAL
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE_MOVE_VAL *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE_MOVE_VAL,    
                             &pro_e_csys_orientmove_move_val );
  value_data.type = PRO_VALUE_TYPE_DOUBLE;
  value_data.v.d = 120.000000;
  status = ProValueAlloc ( &value );
  status = ProValueDataSet ( value, &value_data );
  status = ProElementValueSet ( pro_e_csys_orientmove_move_val, value );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmove, NULL, 
                                   pro_e_csys_orientmove_move_val );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
                           -> PRO_E_CSYS_ORIENTMOVE_MOVE_VAL
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE, 
                             &pro_e_csys_orientmove );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmoves, NULL, 
                                   pro_e_csys_orientmove  );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
                           -> PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE, 
                             &pro_e_csys_orientmove_move_type );
  value_data.type = PRO_VALUE_TYPE_INT;
  value_data.v.i = PRO_CSYS_ORIENTMOVE_MOVE_OPT_TRAN_Y; /* 1 */ 
  status = ProValueAlloc ( &value );
  status = ProValueDataSet ( value, &value_data );
  status = ProElementValueSet ( pro_e_csys_orientmove_move_type, value );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmove, NULL, 
                                   pro_e_csys_orientmove_move_type );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
                           -> PRO_E_CSYS_ORIENTMOVE_MOVE_VAL
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE_MOVE_VAL *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE_MOVE_VAL, 
                             &pro_e_csys_orientmove_move_val );
  value_data.type = PRO_VALUE_TYPE_DOUBLE;
  value_data.v.d = 180.000000;
  status = ProValueAlloc ( &value );
  status = ProValueDataSet ( value, &value_data );
  status = ProElementValueSet ( pro_e_csys_orientmove_move_val, value );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmove, NULL, 
                                   pro_e_csys_orientmove_move_val );
  
  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE,
                             &pro_e_csys_orientmove );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmoves, NULL, 
                                   pro_e_csys_orientmove  );

  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
                           -> PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE_MOVE_TYPE, 
                             &pro_e_csys_orientmove_move_type );
  value_data.type = PRO_VALUE_TYPE_INT;
  value_data.v.i = PRO_CSYS_ORIENTMOVE_MOVE_OPT_TRAN_Z; /* 2 */ 
  status = ProValueAlloc ( &value );
  status = ProValueDataSet ( value, &value_data );
  status = ProElementValueSet ( pro_e_csys_orientmove_move_type, value );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmove, NULL, 
                                   pro_e_csys_orientmove_move_type );

  /*---------------------------------------------------------------*\
    Populating  element PRO_E_CSYS_ORIENTMOVES
                        -> PRO_E_CSYS_ORIENTMOVE
                           -> PRO_E_CSYS_ORIENTMOVE_MOVE_VAL
  \*---------------------------------------------------------------*/
  C_PRINT( " *** Processing Element PRO_E_CSYS_ORIENTMOVE_MOVE_VAL *** " );
  status = ProElementAlloc ( PRO_E_CSYS_ORIENTMOVE_MOVE_VAL, 
                &pro_e_csys_orientmove_move_val );
  value_data.type = PRO_VALUE_TYPE_DOUBLE;
  value_data.v.d = 300.000000;
  status = ProValueAlloc ( &value );
  status = ProValueDataSet ( value, &value_data );
  status = ProElementValueSet ( pro_e_csys_orientmove_move_val, value );
  status = ProElemtreeElementAdd ( pro_e_csys_orientmove, NULL, 
                                   pro_e_csys_orientmove_move_val );

  /*---------------------------------------------------------------*\
    Creating the feature in the current model.
  \*---------------------------------------------------------------*/
  status = ProMdlCurrentGet (&model);
  if ( status != PRO_TK_NO_ERROR ) return ( status );
  status = ProMdlToModelitem( model, &model_item ); 
  status = ProSelectionAlloc (p_comp_path, &model_item,
                              &model_sel);
  
  opts[0] = PRO_FEAT_CR_DEFINE_MISS_ELEMS;
  status = ProFeatureCreate (model_sel, pro_e_feature_tree, opts, 1,
                             &feature, &errors);
  
  status = ProElementFree (&pro_e_feature_tree ); 
  
  return ( status );
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -