PipeCAD之管道标准库PipeStd(2)
PipeCAD之管道标准库PipeStd(2)
Key Words. PipeCAD, PipeStd, 管道设计软件,管件库
1. Introduction
管道标准部件库程序PipeStd的主要用法与PDMS的Paragon模块类似,主要也是采用参数化的方式来表示管件。每种类型的管件Category包含三个集合:参数集Parameter Set、点集Point Set和形集Geometry Set。本文主要来介绍如何创建一个参数化的标准管件。如下图所示为一带颈对焊法兰Weld Neck Flange的参数化管件:

图1 法兰参数化模型
2. Category
类型Category是一类管件数据的集合,如90度弯头、闸阀等。创建类型的时候会自动创建其三个必须的集合:参数集、点集和形集,如下图所示:

图2 创建Category
3. Parameter Set
参数集合Parameter Set用来定义该种类型的管件需要输入哪些参数,即管件标准中定义的数据。

图3 带颈对焊法兰尺寸数据表格
上图来于:http://www.wermac.org/flanges/dimensions_welding-neck-flanges_asme-b16-5.html
为ASME B16.5标准中定义的尺寸数据。其中每个尺寸,如A,D等都可以看作为这里参数集中的一个参数。

图4 参数集定义
每一个参数可以对应一个尺寸,在上图4所示的左边定义好参数集后,在右边的列表中可以为每个管径的管件输入相应的尺寸数据。
4. Point Set
点集Point Set主要用来定义管件的连接点或一些辅助定义位点。如下图所示:

图5 点集定义
每个点需要定义一个编号,对于点的编号也有约定。如对于普通的管件,编号1、2表示管件的两端。对于三通其支管要用编号3等。这些约定是为了后面生成轴测图的要求。点的位置PX,PY,PZ及方向DX,DY,DZ都是可以用前面定义的参数表示。如某个值要用参数1,就写成$PA1。或者还可以用数学表达式,如:$PA1 + 2 * cos($PA2)等。
5. Geometry Set
形集Geometry Set主要来定义管件的几何形状。使用一些基本形状,如长方体,圆柱体、圆台体等来构造管件外形。每种基本体都是用参数表示,如下图所示为圆柱体的参数:

图6 参数化基本体
对于圆柱体,需要确定其轴向PAXI,高度PHEI及直径(PDIA)等。对于数据值型的参数都是可以使用数学表达式来表示。这样可以使不同的管径对应不同的形状。

图7 DN10和DN80的法兰
6. Conclusion
综上所述,通过定义参数集、点集和形集来实现标准管件的参数化。通过统一的方式,对任意标准管件进行参数化处理。这样程序操作方式统一,使用简单。对于一些特殊管件,也可以通过这种方式来建模,灵活自由。不像有的软件是将管件类型通过硬编码的方式写在程序中,如果要增加程序中没有的管件类型,只有改程序的不便。
管件标准库程序PipeStd的管件定义基本成型,下一步实现管道等级Piping Specification功能。管道等级的作用主要用于筛选过滤,方便材料控制。考虑到后面生成ISO轴测图的功能,因为每种管件都会有SKEY,而这些SKEY已经分好类型了。所以管道等级的处理也尽量简化,直接根据SKEY来分大的类型及小类,如法兰的大类为Flange,小类里面根据SKEY来筛选,FLWN, FLSO等。
PipeCAD之管道标准库PipeStd(2)的更多相关文章
- PipeCAD之管道标准库PipeStd
PipeCAD之管道标准库PipeStd eryar@163.com Key Words. PipeCAD, PipeStd, 管道设计软件,管件库 1. Introduction 前不久,两位老友徐 ...
- PipeCAD之管道标准库PipeStd(3)
PipeCAD之管道标准库PipeStd(3) Key Words: PipeCAD, PipeStd, Pipe Design 3D, Linux 1. Introduction 管道标准部件 ...
- Python标准库06 子进程 (subprocess包)
这里的内容以Linux进程基础和Linux文本流为基础.subprocess包主要功能是执行外部的命令和程序.比如说,我需要使用wget下载文件.我在Python中调用wget程序.从这个意义上来说, ...
- Python标准库---子进程 (subprocess包)
这里的内容以Linux进程基础和Linux文本流为基础.subprocess包主要功能是执行外部的命令和程序.比如说,我需要使用wget下载文件.我在Python中调用wget程序.从这个意义上来说, ...
- [python标准库]XML模块
1.什么是XML XML是可扩展标记语言(Extensible Markup Language)的缩写,其中的 标记(markup)是关键部分.您可以创建内容,然后使用限定标记标记它,从而使每个单词. ...
- python 标准库 -- subprocess
subprocess 主要功能室执行外部的命令和程序 一个进程可 fork 一个子进程, 并让这个子进程 exec 另外一个程序. 在 python 中, 可以通过标准库中的 subprocess 包 ...
- Python:标准库(包含下载地址及书本目录)
下载地址 英文版(文字版) 官方文档 The Python Standard Library <Python标准库>一书的目录 <python标准库> 译者序 序 前言 第1章 ...
- python第六天 函数 python标准库实例大全
今天学习第一模块的最后一课课程--函数: python的第一个函数: 1 def func1(): 2 print('第一个函数') 3 return 0 4 func1() 1 同时返回多种类型时, ...
- go标准库的学习-io
参考https://studygolang.com/pkgdoc 导入方式: import "io" o包提供了对I/O原语的基本接口.本包的基本任务是包装这些原语已有的实现(如o ...
随机推荐
- 关于__str__的介绍
在python语言里,__str__一般是格式是这样的. class A: def __str__(self): return "this is in str" 事实上,__str ...
- ActiveMQ服务安装
1.下载安装ActiveMQ服务提供者 http://activemq.apache.org/ 2.启用ActiveMQ服务 cd [activemq_install_dir] bin\activem ...
- 【BZOJ 1269】 [AHOI2006]文本编辑器editor
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] /* [move k] 指令.直接 把pos改成k.表示改变光标位置 [insert n s],在pos后面插入一个长度为n的字符串 ...
- Eclipse中JSON文件报错,如何解决?
eclipse里面的JSON文件老报错,虽然可以正常运行,但红X看起来就是不爽,怎么解决呢? 这是因为Eclipse认为JSON文件不需要注释,所以报的编译错误,我们可以通过Eclipse的设置把它的 ...
- hbase报错Could not initialize class org.apache.hadoop.hbase.protobuf.ProtobufUtil
Caused by: java.lang.RuntimeException: java.io.IOException: java.lang.reflect.InvocationTargetExcept ...
- JavaScript编写Web脚本最佳实现
最近在看JavaScript DOM 编程艺术,总结一下JavaScript编写Web脚本的规范与实现,对于实现有以下几点要求: 平稳退化:确保网页在没有JavaScript下也能正常运行 分离Jav ...
- 破解者是如何篡改游戏内数值的,揭秘Android手游破解全过程
由于Android系统的开放性,让人人都是开发者成为可能,也正因如此,手机APP遭受破解和盗版问题长期存在,且愈演愈烈.尤其是手游 行业,如刀塔传奇.植物大战僵尸.2048等知名游戏被破解的案例不胜枚 ...
- 关于ValueAnimation以及Interpolator +Drawable实现的自己定义动画效果
ValueAnimation : Android中的属性动画,他跟objectAnimation是比补间动画拥有更强大的功能,能够操作对象.所以我们能够在自 定义View中通过他们来实现些特别的功能. ...
- swift学习笔记(五)构造过程
构造过程是为了使用某个类.结构体或枚举类型的实例而进行的准备过程.在构造过程中,对每一个属性进行了初始值预设和其它必要的准备和初始化工作. 与OC相比,swift的构造函数.不须要返回值.同一时候,在 ...
- nodejs 实现简单 http 代理并缓存
var http = require('http'), fs = require("fs"), url = require('url'), querystring = requir ...