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 ...
随机推荐
- 启动tomcat运行maven工程报错:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:
控制台报错信息:
- 获取鼠标经过处的标签的标签名和id
<script> var el = window.document.body; // 声明一个变量,默认值为body window.document.body.onmouseover = ...
- 学习jvm,关于MAT an internal error occurred during:"Parsing heap dump" from问题
写了一个死循环不断的创建对象,模拟内存溢出 package com.zuo.test1; import java.util.ArrayList; import java.util.List; publ ...
- ftp上传下载文件
客户端client: import os import json import socket import struct sk = socket.socket() sk.connect(('127.0 ...
- pandas 1 基本介绍
import numpy as np import pandas as pd pd.Series() 构造数据 s = pd.Series([1, 3, 5, np.nan, 44, 1]) prin ...
- pandas 3 设置值
from __future__ import print_function import pandas as pd import numpy as np np.random.seed(1) dates ...
- 【codeforces 370C】Mittens
[题目链接]:http://codeforces.com/problemset/problem/370/C [题意] 给你n个人,每个人都有一双相同颜色的手套; 然允许在所有人之间交换手套; (每个人 ...
- java用freemarker实现导出word----包含图片
分为以下三个步骤: 1.先制作word模板 2.将该文档另存为 xml 文件 3.打开xml 文件 将对应的字段替换,比如 4.将xml文件保存成ftl格式的文档 5.相应的代码: package o ...
- Qt之QSS(动态属性)
简述 QSS可以定制应用程序的外观,无需关注Qt样式背后的魔力.从非常轻微到极其复杂的调整,样式表都可以做到.对于一个完全定制和独特的用户体验,QtQuick和QGraphicsView是更好的选择. ...
- asp.net 缓存公共类
using System; using System.Collections.Generic; using System.Text; using System.Web; using System.We ...