自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 资源 (1)
  • 收藏
  • 关注

原创 apache问题

将wamp 升级到了比较高的版本,相应的apache也升级到了 2.4.23,原来的apache倒是出现了问题:同一个局域网内,别人机器不能访问我的站点。研究了半天,终于找到方法:防火墙关闭修改 apache 的 httpd.conf文件将其中的 Require local 修改成 Require all granted.这个是2.4之后新的处理方法,之前的方法不管用了。如图:修改 h...

2019-10-09 18:27:37 236

原创 C#_调用http服务

HttpClinet调用using (var client = new HttpClient()){ var requestJson = JsonConvert.SerializeObject(new { sap_code = "K00LSC0000004", plant = "3000" }); HttpContent httpContent = new StringContent(re...

2019-10-09 17:30:00 966 1

原创 C#_Array排序

在开发程序的过程中,经常需要对数组进行排序,而且排序的条件也千变万化。举例:将一个文件夹下的所有文件汇集出来生成一个数组,但这个数组的顺序默认是按照命名排列的,但我们需要按照文件建立的时间排列。收集文件夹内的文件DirectoryInfo dinfo = new DirectoryInfo(@"c:\Test");FileInfo[] fileInfo = dinfo.GetFiles()...

2019-10-09 17:25:10 468

原创 C#_String类

格式化常规类型的格式化String类的format()方法用于创建格式化的字符串以及连接多个字符串对象。熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处。format()方法有两种重载形式。format(String format, Object... args) 新字符串使用本地语言环境,制定字符串格式和参数生成格式化的新字符串。format(Locale loc...

2019-10-09 17:23:08 621

原创 C#之WebService

概述WebService是网络服务中一项重要的技术,有着非常重要的应用。WebService接口编写WebService接口的编写,比较简单,许多教程都有提到,本文不在赘述。大概按以下思路,不熟悉的请自行百度。新建WEB项目添加 web service编写接口方法发布同源调用WebService的同源调用比较简单,只需要按照以下步骤即可。添加服务引用实例化webserv...

2019-10-07 22:39:44 2227 1

原创 PDMS.NET_元素收集

概述在PML语法中,利用collect语句或者COLLECTION对象均可实现元素收集。在.NET中主要通过Filters下面的类,来实现元素的收集。普通过滤器类型过滤器类型过滤器主要类为TypeFilter。// 实例化TypeFilter filt1 = new TypeFilter(DbElementTypeInstance.ATTACHMENT);// 也可以通过Add / ...

2019-10-07 22:03:48 1132

原创 PDMS.NET_Undo&Redo

概述在软件操作中,撤销和重做是非常频繁的一种操作。在PML,我们使用mark db的方式实现,在.NET中,有专门的类用于管理。使用方法该类在Aveva.Pdms.Utilities动态库下,命名空间Aveva.Pdms.Utilities.Undo。主要使用类UndoTransaction。// 设置撤销标记UndoTransaction trans = UndoTransaction...

2019-10-03 22:12:46 518

原创 PDMS.NET_项目管理类

概述PDMS不但提供了许多针对元素的类,对于项目管理也提供了许多类。Project项目类。// 由于是静态类无法用new实例化,可利用属性CurrentProject实例化,如:Project project = Project.CurrentProject;MDB & MDBSetup操作MDB的类。MDBSetup setUp = MDBSetup.CreateMDB...

2019-10-03 21:54:08 586

原创 PDMS.NET_异常处理

概述任何程序都离不开异常和异常处理。PML处理异常的手段,主要是使用handle语句,但PML的异常处理有着很明显的缺陷,就是异常处理只能处理单行语句,无法针对代码段做异常处理。而.NET中,就很好的处理了这个问题。除了使用.NET原生的try catch语句外,PDMS还实现了两个专门的类,用于异常处理和消息框。使用方法说明命名空间Aveva.Pdms.Utilities.Messag...

2019-10-03 21:46:10 605

原创 PDMS.NET_元素属性和类型

概述PDMS的对象有很多属性,如name/purp/desc/pos等等。传统的PML语言,可以通过object快速的获取或修改对象。而在.NET中,同样支持类似的操作。DbElement在前面曾提到过,每个PDMS元素都是一个DbElement。通过DbElement类的方法,就可以直接为元素赋属性,获取属性等操作。Get字符串型属性// 获取指定属性的值public abstra...

2019-10-03 21:37:23 1554

原创 PDMS.NET_Element

概述DbElement是PDMS中最重要的对象,在PDMS中万物皆元素。CE在PDMS中,CE是Current Element的缩写,表示当前对象。.NET获取当前对象主要使用CurrentElement对象。// 引用命名空间using Aveva.Pdms.Shared// 获取当前对象,类型为DbElementDbElement ele = CurrentElement.El...

2019-09-30 14:09:49 1082 1

原创 NW_视点

概述视点(view point)是一个重要的管理对象,它记录了观察的位置、摄像机角度、批注等诸多信息。可以利用NW的原生功能,将视点导出成XML文件,也可以将外部XML文件导入NW生成视点。视点实例化获取当前视点视点主要通过Document对象的CurrentViewpoint属性获得。Document document = Application.ActiveDocument;Vie...

2019-09-30 12:59:36 367

原创 PDMS.NET_执行PDMS命令

概述PDMS内置了许多命令语法糖,利用这些命令,可以快速的实现很多很棒的效果。那么在.NET开发里面,要如何调用这些内置命令了?使用引用动态库Aveva.Pdms.Utilities命名空间using Aveva.Pdms.Utilities.CommandLine;执行命令string pdmsCommand = "new site";Command.CreateCommand...

2019-09-29 15:54:53 2096 2

原创 PDMS.NET窗体

概述本文主要讲解了如何将一个用.NET开发的窗体,部署到PDMS中。在阅读本文之前,建议先阅读《PDMS .NET开发》作为前置课程。.NET开发新建.NET项目PDMS只接受类库的插件形式。引入Aveva.ApplicationFramework、Aveva.ApplicationFramework.Presentation两个DLL文件。新建用户控件在解决方案中,右键添加一个用户控...

2019-09-29 15:28:26 1639 1

原创 PDMS.NET开发

概述PDMS 的.NET开发主要分以下两种:.NETPML + .NET.NETAVEVA公司提供了.NET的二次开发接口,以方便有C#开发经验的工程师可以快速的利用.NET框架对AVEVA的产品进行开发,如PDMS,MARINE等。传统的PDMS开发主要利用PML语言,但AVEVA提供的PML对象库有限,如果想实现更多丰富的功能,使用PML开发就有很大的局限性。但利用.NET可...

2019-09-29 14:53:42 5634 2

原创 NPOI

概述NPOI,顾名思义,就是POI 的.NET 版本。POI 是一套用Java 写成的库,能够帮助开发者在没有安装微软Office 的情况下读写Office 文件。NPOI是一套开源的项目,常用的命名空间,包含以下内容:NPOI.Util: 基础辅助库NPOI.POIFS: OLE2 格式读写库NPOI.DDF: Microsoft Drawing格式读写库NPOI.SS: Excel...

2019-09-29 13:34:32 739

原创 NW 操作模型

overviewNW操作模型主要通过Model和ModelItem两个类。遍历树Document document = Autodesk.Navisworks.Api.Application.ActiveDocument;// 获取第一个模型文件Model model = document.Models[0];// 获取目录树中的所有节点ModelItemEnumerableColl...

2019-09-29 12:30:58 813

原创 NW 操作文件

overviewNW可以通过API实现打开文件、保存文件、发布文件等操作。这些操作主要在Application空间下。打开文件// 先获取当前的活动窗口Document document = Autodesk.Navisworks.Api.Application.ActiveDocument;// 打开文件document.OpenFile(@"C:\01总图区.nwd");常用...

2019-09-11 19:10:53 464

原创 NW API架构

NW .NET架构对象说明对象用途命名空间Application访问Document / GUI / Plugins / Progress / GUI eventsAutodesk.Navisworks.Api.ApplicationDocument访问models / selection / view point / file eventsAutodes...

2019-09-11 18:14:22 370

原创 NW开发入门

quickstartNW的二次开发,是以动态库的形式嵌入到NW主进程中的。这一点和许多专业软件的.NET开发套路基本相同,这样的开发模式 弊端很明显:调试很麻烦,一旦代码变化,动态库需要重新编译,然后主进程需要重新启动。对于那些重启很慢的软件,调试的过程是很奔溃的。插件一旦出现异常,会直接把主程序的进程给搞死,经常出现系统奔溃。这个用户体验极度糟糕。NW Freedom 是不支持API...

2019-09-11 13:15:56 633

原创 PDMS未公开类

SPECIFICATIONS该类主要用于获取MDB下的各种等级,比如管道等级、保温等级、伴热等级等。!spec = object SPECIFICATIONS()// Descriptions//获取管道等级if (!spec.Piping())then !pipingSpecList = !spec.Descriptionsendif//获取保温等级if (!sp...

2019-08-27 10:34:48 682

原创 vue入门

环境node.js & npm安装安装方法vue dev tool这个工具是一个chrome插件,主要用于vue的开发调试。安装方法Node:这里有几个坑,防止踩到。坑一:这个小图标如果过了一段时间不亮了,刷新下页面就可以了。坑二:这个Vue不显示,各种原因很多。个人只是修改了如下的一处,可能还会有其他原因,造成不显示。打开Chrome的扩展工具,在插件的详细信...

2019-08-26 15:04:38 84

原创 PDMS元素收集

PML语法获取元素主要有以下 两种方法:collect关键字COLLECTION对象collectvar !elementList collect [收集对象] [条件] [范围]收集对象对象主要指的是要收集的元素类型,如:all FRMW (所有的FRMW对象)all BRAN member (所有管件,包括直管)BRAN member (所有管件,不包括直管)all...

2019-08-13 16:37:55 1681

原创 PDMS原生类

BLOCKBLOCK是PDMS提供的原生类。该类通常不独立使用,主要是配合ARRAY的Evaluate方法使用,用于返回一个经过计算的数组。sample// 实例化!oBlock = object BLOCK('Express 表达式')// 计算数组对象var !aZoneList coll all ZONE for ce// 获取数组的名称,并全部转换为小写字母!aZo...

2019-08-13 16:29:44 497

原创 PDMS平面图命令

plotplot命令可以将平面图打印成PDF格式的文件。// 将当前层次打印成pdf格式的文件,并设置输出路径文件名等。plot CE pdf /D:\text.pdf 'UNITS MM'// COLOUR COLOURPLUS 解决了draft图纸打印成pdf后,由于背景色由黑色变成白色,会导致原来图纸中的白线和白色字看不见的问题。 其将白色、黑色、灰色全部打印成黑色。// ov...

2019-08-08 13:42:21 1550

原创 PDMS结构命令

pnod// 创建点并定位NEW PNOD /PNOD1 AT E1000 N500 U500 // 拷贝先前的点来新建点并移动位置NEW PNOD /PNOD2 COPY PREV BY E1000pline通过预先定义好的snod来生成pline线STRING BEAM FROM /PNOD2 TO /SNOD3 NAME /UB80.LEV2定位POSSTART ...

2019-08-08 12:45:40 1021 1

原创 PDMS管道命令

branchConnect主要用于设置管道的头尾参考,一旦利用CONN命令连接以后,管道的头尾其他属性都能自动得到。如:HBOR ,HBOR, HCON, HPOS and HDIR。CONN PH TO /1205-N5CONN PT TO LAST MEMCONN PH TO PT OF /100-A8/1CONN PH TO ID NOZZ使用连接命令前,必须先定义branc...

2019-08-08 12:43:36 4261 2

原创 PDMS设备命令

规则合理设置PDMS中元素的规则属性,可以更高效的对元素进行定位和赋值等。语法格式:rule set + <attribute name> + [static/dynamic] [on] + [select element]静态规则需要手动执行,动态规则不需要执行命令说明备注rule set zlen dynamic (xlen + ylen)设置某...

2019-08-08 12:37:52 3315

原创 PDMS通用命令

对象操作拷贝对象和属性的拷贝。// 拷贝并重命名new STRU name /newName copy /oldName rename /oldName /newName移动by沿坐标系移动。(by只能正向移动,无法沿着某个方向移动)语法格式:by + <pos> + [axes]命令说明BY E400 N300沿当前对象所属层次的坐标系移...

2019-08-08 12:29:33 6644

原创 PDMS查询命令

查询命令绝大部分属性不但可以用q attrname命令查询,而且可以用var !varname attrname这样的方式取值。属性描述lastmod当前元素的最后修改时间lastmod当前元素的最后修改时间lastmod hier当前元素及其成员的最后修改时间usermod当前元素的最后修改人lastmod xlen当前元素的某个属性最后...

2019-08-07 09:15:09 3694

原创 PDMS显示命令

概述PDMS支持中心线、透明、负实体、Pline等多种显示设置。透明EQUI通常会在设备模块中,新建一些基本体,用于充当检修空间的作用。这些基本体通常不显示为实体,而且不参与硬碰撞。new boxlevel 3 5 //设置层次repr obstruction on translucency 80 // 透明度在0-99之间,数值越大,越透明repr update // 必须刷新,...

2019-07-31 20:09:19 6032 1

原创 窗体和控件

FMSYSFMSYS是PML专门用于系统、窗体、菜单的对象,其不同于标准对象。由于其特殊性,使用方法也有所差异。由于对象的特殊性,可直接使用全局变量使用。!!FMSYSLoadForm该方法主要用于将窗体对象加载到内存中。如果想调用窗体对象中的方法,又不想使用show !!formName的方式,显式加载窗体,用该方法即可。!form = !!FMSYS.LoadForm(!formNa...

2019-07-31 13:32:25 676

原创 GridControl

GridControl是AVEVA封装的一个内置的列表控件,其效果类似于C#里的grid控件。这样就可以在PML里面实现列表的功能,其功能要远远强于普通的LIST控件,当然其实现也比较复杂。前置条件导包需要在使用前,将DLL文件加载到内存中。import 'GridControl'import 'Aveva.Pdms.DataManagement.PML'窗体定义FRAME ....

2019-07-30 11:10:28 1229 1

原创 《有效需求分析》

感悟方案非需求要意识到方案后面真实的问题,而不是简单的实现。如果只是简单的实现方案,注定是个平庸的产品,不会超出用户预期。需求 = 预期 - 现状一旦出现现状≥预期,就不会出现需求,此时需要提高用户的期望值,这样才能产生需求。哪里有分解,哪里就有接口我们能为对方提供什么服务?我们需要对方提供什么服务?一听二问三读听,不打断,不陷入细节,先获取整体流程。问,沿着流程发问,获取分支...

2019-07-29 17:55:51 1905

原创 《重构》

任何一个傻瓜都能写出计算机可以理解的代码,唯有写出人类容易理解的代码,才是优秀的程序员。1、重构的原则1.1、为何重构重构改进软件设计。很多时候为了短期目的,在程序完成之后,会贸然修改代码。慢慢的程序就会失去原来的结构设计,会导致代码越来越难理解。因此重构就是在整理代码,让代码越来越整洁。重构使软件更容易理解。很多时候软件后续的开发者,不一定是原来的开发者。甚至很多时候,即使是自己开...

2019-07-29 17:45:54 227

原创 《数据库设计》

| 1、数据库设计数据库设计不可能一蹴而就,应该是反复探寻,逐步求精的过程。1.1、基本步骤需求分析定义实体定义联系定义键基视图(???没看懂)定义属性定义其他规则和约束1.2、命名规范1.2.1、表表名一般用名词或名词短语。表名不应出现空格,多个单词间用"_"分割。1.2.2、列尽量采用unicode数据存储格式,用nvarchar代替varchar特殊的...

2019-07-26 10:42:46 202

原创 《代码管理》

1、代码仓库代码仓库主要有单代码仓库和多代码仓库两种解决方案1.1、单代码仓库单代码仓库又称为中心仓库。其主要优点如下:方便代码重用方便代码重构统一开放规范目前很多大的互联网公司,均采用单代码仓库的策略。典型的如Google公司。但是单代码仓库也有很多弊端,如:权限管理比较麻烦代码量过多,需要开发专门的系统去管理仓库。1.2、多代码仓库多代码仓库,将代码拆分成多个仓...

2019-07-25 15:24:18 1705

原创 《代码整洁之道》

1、前言让营地比你来的时候更干净上面是美国童子军的军规,对于软件开发来说,如果每次检入都比检出的时候干净,那么代码将永远不会变的更坏。2、命名在程序开发的各个环节,命名是无处不在的。比如文件夹名、文件名、类名、方法名、变量名等等。2.1、命名特点好的命名应该遵循如下特点:见名知意,这个也是我自己一贯坚持的原则。不要使用过于简化的命名。有些简化是世界通用的,有些简化可能是某个编...

2019-07-25 15:14:20 139

原创 FineReport常用js语法

刷新页面刷新当前页contentPane.refreshAllSheets(); 刷新子页面并重新加载父页面$c = $('button:contains("查询")', window.parent.document);$c.click();window.parent.FR.closeDialog();这里需要有查询按钮发邮件利用http服务var email = '收件人...

2019-07-23 14:42:38 2758

原创 DataGridView

概述DataGridView主要用于数据的展示。数据加载泛型加载foreach(var model in models){ DataGridViewRow dgvr = dataGridView1.Rows[dataGridView1.Rows.Add()]; dgvr.Cells[0].Value = model.name; dgvr.Cells[1].Value = mo...

2019-07-23 14:29:43 131

NPOI的DLL文件包

NPOI,顾名思义,就是POI 的.NET 版本。POI 是一套用Java 写成的库,能够帮助开发者在没有安装微软Office 的情况下读写Office 文件。NPOI是一套开源的项目

2019-09-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除