Patran PCL开发手册:关键功能与教程

需积分: 43 5 下载量 41 浏览量 更新于2024-07-21 收藏 18.01MB PDF 举报
本资源是Patran的PCL用户手册,主要针对Patran的二次开发提供了深入的指导。Patran是一款由MSC Software公司开发的结构分析软件,用于三维几何建模、求解力学问题以及与CAD系统交互。PCL(Patran Command Language)是该软件中的一个核心组件,允许用户通过编程接口进行高级操作和自动化流程。 手册的第一章,"Introduction",概述了PCL的基本概念,包括用户界面描述,如何理解和解释session和journal文件,以及错误处理和解决问题的方法。章节内容强调了PCL函数组织的逻辑,并提到了关键的错误处理机制,确保用户在遇到问题时能有效地定位和解决。 第二章,"Basic Functions",详细列出了PCL中的基本功能,每个功能都配以功能描述和命令行操作。例如: 1. `insight.transform_scale`:用于缩放模型的几何体。 2. `neutold_import_neutral`:导入中性文件到Patran。 3. `neutral_export2`:导出模型为中性格式,便于分享或备份。 4. `p3_cad_get_entity_name` 和 `p3_cad_get_entity_strings`:获取CAD实体名称和字符串信息。 5. `p3_express_import`:导入 EXPRESS数据到Patran,涉及预览和退出功能。 6. `p3_ug_open_ug` 和 `p3_ug_open_ug_v2`:用于打开和交互SolidWorks模型。 7. `pfk_get_features` 和 `pfk_get_feat_with_params`:获取特征数据,包括参数化的特征。 8. `pfk_create_ug_import`:创建用于SolidWorks模型导入的脚本。 9. `pfk_is_part_imported`:检查零件是否已成功导入。 这些函数涵盖了从文件操作、CAD数据处理到模型预处理和交互式功能的方方面面,为开发者提供了丰富的工具来扩展Patran的功能并实现自动化工作流程。理解并熟练运用这些PCL函数是进行Patran二次开发的关键,有助于提升设计和分析效率。
2009-04-17 上传
In a Nutshell 6 What is PCL? 6 What can PCL be used for? 7 How does PCL work? 8 All you really need to know is on this page! 9 Documentation 9 PCL for Everyone 10 Entering Equations 10 Entering Data 11 Session Files 12 Rebuilding Models 13 PCL for the More Adventurous 16 Parametric Modeling 16 Adding a Graphical User Interface, GUI 20 Exercise 1: Session Files 21 PCL Programming Basics 23 Overview 23 PCL Expressions 25 Expressions, Comments, Syntax Tips 25 Identifiers 27 Naming Conventions 27 Variable / Function Scope 28 Structure of a PCL Function 29 Function Basics 29 Simple PCL function Example 30 Exercise 2: Hello World! 32 Exercise 3: Effective PCL 33 PCL Operators 34 String comparisons 34 PCL Variables and Constants 35 Datatypes 35 Variable Scope 36 Directly Allocated Arrays 37 Virtual arrays 38 Virtual strings 40 Loop Control Statements 41 For Loop 41 While Loop 41 Repeat Loop 42 BREAK 43 CONTINUE 44 Exercise 4: Writing Files 45 Exercise 5: Reading Files 47 Conditional Control Statements 48 IF Statement 48 SWITCH Statement 49 Structure of a PCL Function 50 Compiling and Linking PCL Functions 53 Primary PCL Directives 54 Compiling PCL outside of MSC.Patran 58 Linking Compiled Libraries 59 Other PCL Directives 60 Start Up Files 61 Exercise 6: p3epilog.pcl 62 Debugging 63 Debugging Compile Errors 63 Debugging Runtime Errors 64 Accessing PCL Functions 66 From The Command Line 66 From Any MSC.Patran Form 67 PCL Functions with Field Variables 68 MSC.Patran Built-In Functions 69 Naming Conventions for Applications 70 Naming Conventions for Other Operations 71 Exercise 7: Group Elements By Shape 73 Graphical User Interface 74 The PCL Class Statement 75 PCL Widgets 76 Required Functions for Building/Displaying a Form 77 The init() Function 77 The display() Function 78 Widget Callbacks 81 What Are They? 81 What Are They Used For? 82 Callback Arguments (Widget Function Data) 82 Widget Placement 84 Widget Variables 86 Modifying Widgets 87 Getting Data from Widgets 88 Putting it all Together (Example) 89 Exercise 8: Simple Form 91 The C-Preprocessor and Include Files 92 Make Files 93 Exercise 9: Callbacks 95 Handling Errors and Messaging 97 Errors from Built-In Functions 97 Custom Error Messages 98 Using User Messages Database 98 Without a Messages Database 99 Taking Advantage of the UNDO Feature 101 Select Mechanism 102 Select Mechanism GUI Mechanics 102 Select Databoxes, Select Frames, and Select Menus 102 GUI PCL Example 104 List Processor 105 List Processor Mechanics 105 All You Really Need to Know 106 Exercise 10: Form to Group Elms By Shape 109 Executing Programs Outside of MSC.Patran 111 Spawning Remote Processes 111 Locking a database 113 Using C and Fortran executables to access a MSC.Patran database directly. 114 External Access of an MSC.Patran Database 115 Special Widgets 117 File Widget 117 Spreadsheet Widget 120 Exercise 11: File Widget 121 Adding Help/Description to your PCL 122 Percent Complete 123 Functions 123 Example 123 Event Manager 124 General 124 Functions 125 Example 125 Primitive Graphics 126 Graphic Objects 126 Graphic Segments 127 Example 128 Another Example 129 Exercise 12: Primitive Graphics 130 MSC.Patran Customization 131 Adding Utility Programs to the Main Menu 131 Example 132 Example: p3_user_menu.my_menu.def 133 Customizing the MSC.Patran Toolbar 134 Exercise 13: Pulldown Menu 137 Exercise 14: Toolbar 138 Some Final Thoughts 140 Appendix A 143 Built-in Function Examples 143 Documentation for a typical MSC.Patran built-in function. 144 To get all the nodes and their global coordinates 145 To get the topology of every element 146 To get the shape of every element 147 To get all the element connectivity for all elements 148 To get the elements associated to a particular element property set 149 To get an element property value (shell thickness) for a specific element 150 To get a material property value 152 To get a list of all groups 153 To get the nodes and elements associated to the current group 153 To get result values for specified elements 154 Appendix B 163 Strings & String Functions 163 Declaration 164 Initialization 164 String Comparisons 164 Functions 165 Appendix C 173 Noteworthy Functions 173 sys_move_raw(…) 174 mth_array_search(…) 175 mth_sort(…) 176 mth_sort_row(…) 177 mth_sort_column(…) 177 fem_geom_edge_length(…) 178 fem_geom_face_area(…) 178 fem_geom_elem_volume(…) 178 fem_geom_elem_location(…) 179 Appendix D 180 Form Spacing Parameters (appforms.p) 180 * SPACING 181 Appendix E 206 MSC.Patran Architecture 206 Appendix F 208 Shareware Compiling Functions 208 Appendix G 211 Parametric Patran 211 Appendix H 217 Additional List Processor Notes 217 List Processor Mechanics 218 List Processor Functions 219 List Processor Sublist Functions 220 List Processor Attribute Functions 221 Miscellaneous List Processor Functions 222 List Processor Examples 223 Easy to Use List Processor Functions 227 Appendix I 228 Key Mapping 228 Appendix J 231 Widget Classification 231 Appendix K 234 User Defined AOM 234