图模导入原理之 SVG图形基础与图形导入
一、svg图形基础
PMS图形中,图形svg文件内容一般由两部分组成:
1、<defs>标签中定义的是图元信息,即各种不同设备不同状态的图元应该如何显示;
2、各种<XXXXXX_Layer>标签中定义的是各种不同的设备信息,如开关通常定义在<Breaker_Layer>层中,然后在Breaker_Layer下的数据中去描述各开关的属性信息。

二、<defs>标签定义
<defs>标签中主要定义不同电压等级的显示颜色及图元信息,包含的标签为:
1、<style>标签内容

2、<symbol>标签内容主要包含各同图元信息

在图形导入时,读入svg文件内容时,会根据定义好的名称截取规则,获取图元名称,并判断在本机data/icon路径下是否有相应图元,如无相应图元则会自动将svg文件中描述的图元信息保存成data/icon下的ivg图元文件,以供dms调用该图元。
导出到data/icon路径下的图元如下:

三、<XXX_Layer>标签内容
各Layer标签中,定义的主要为各设备信息,以Breaker_Layer为例说明。

Breker_Layer标签下的各个<g>标签则分别定义各个开关信息,以其中一个<g>标签为例说明。

其中开关的相关描述如下:
1、设备的rdfid;
2、该设备引用的图元,即<defs>标签中描述的相应图元;
3、设备的rdfid,将会写到导入后的图形文件的“自定义属性”中,通过gd打开图元可查看;
4、设备的名称;
5、设备所属图层。
需要说明的是,不修改特别的设置时,在图形导入过程中,使用1中的rdfid作为唯一性标识,到实时库或商用库中去搜索设备的ID,并添加相应设备的关联信息。关联信息可在gd中打开图形后,点击相应图元查看。

四、图形导入流程与设备关联
1、图形导入流程
PMS的图形导入通常在工作站上进行。在模型数据导完后,模型服务器上的模型导入相关进程会发送一个模型导入完成的消息至工作站上的model_debug程序,model_debug即开始在工作站上导入图形,图形导入完成后,通过 svn将导入后的图形文件同步到其他各工作站及服务器上。
自动成图原图导入是通过自动导脚本监视成图生成的文件夹,自动成图生成svg文件后,即自动将其导入,并同步。
2、设备关联
图形导入过程中完成相应设备的关联。通过读取图形文件中设备的rdfid,以及modelfile/red/各路径下的svgimp.ini文件中的配置信息,决定图形中各不同Layer中的设备分别关联哪个表中的数据,并通过rdfid筛选出id,然后填写关联信息。只有关联信息正常,且关联id的设备在库中正常存在时,才会在dms图形界面中显示设备相关信息。
3、图形文件流转流程
图形文件通常与xml文件一同存放在modelfile/red/路径下,各路径下均配置有svgimp.ini文件,svgimp.ini文件中有配置图形文件导入后存放的路径,如modelfile/red/pms/svgimp.ini文件中[out-dir]配置项中配置转换后图形存放路径为xtsvg/dms_red/,即该路径下图模导入后将导入的图形自动存放在xtsvg/dms_red路径下。图模红转黑后,红黑图管理界面将自动根据相关文件信息,将xtsvg/dms_red路径下图形文件复制到xtsvg/dms路径下并同步至其他各节点。
请务必保证图形导入的路径下具备svgimp.ini文件,否则将使用data/etc/svgimp.ini,该路径下的svgimp.ini文件极大可能并不适用,导致图形导入后显示或关联有问题。
注:在红黑图管理界面导入红黑或黑图时,均应该保证存放原图路径下具备正确的svgimp.ini文件,否则导入的图形可能有问题。切忌随意路径导入图形文件。
图模导入原理之 SVG图形基础与图形导入的更多相关文章
- SVG.js 基础图形绘制整理(二)
一.折线 var draw = SVG('svg1').size(300, 300); //画折线 //使用字符串点 // var polyline=draw.polyline('0,0 100,50 ...
- 基于svg.js实现对图形的拖拽、选择和编辑操作
本文主要记录如何使用 svg.js 实现对图形的拖拽,选择,图像渲染及各类形状的绘制操作. 1.关于SVG SVG 是可缩放的矢量图形,使用XML格式定义图像,可以生成对应的DOM节点,便于对单个图形 ...
- 数据可视化-svg入门基础(二)
接上一篇:数据可视化-svg入门基础(一),基础一主要是介绍了svg概念,元素样式设置等. svg是(scalable vector graphic)伸缩矢量图像. 一.目录 (1)图形元素 (2)文 ...
- 图机器学习(GML)&图神经网络(GNN)原理和代码实现(前置学习系列二)
项目链接:https://aistudio.baidu.com/aistudio/projectdetail/4990947?contributionType=1 欢迎fork欢迎三连!文章篇幅有限, ...
- 《Programming WPF》翻译 第7章 1.图形基础
原文:<Programming WPF>翻译 第7章 1.图形基础 WPF使得在你的应用程序中使用图形很容易,以及更容易开发你的显卡的能力.这有很多图形构架的方面来达到这个目标.其中最重要 ...
- 思维导图VS金字塔原理
作为常识,思维导图制作的核心元素是关键词,而金字塔原理制作的核心元素则是拓展的概要句子,这两种方式是当今人们常用的思维工具,本文对其做了对比,希望对你的选择有所帮助. 金字塔原理结构:从上到下三角形结 ...
- Android图形基础
Android图形基础 Android在其android.graphics包中提供了完整的本机二维图像库. Color类,代表颜色,是用4个数字表示的,透明度.红色.绿色和蓝色(Alpha.Red.G ...
- SVG的基础使用
SVG的基础使用: <%@ page language="java" contentType="text/html; charset=UTF-8" pag ...
- Android Studio图形基础(AS开发实战第二章学习笔记)
图形基础 一.drawable 在代码中引用drawable文件可分为两种情况 (1)使用setBackgroundResource和setImageResource方法,可直接在参数中指定drawa ...
- CSS图形基础:纯CSS绘制图形
为了在页面中利用CSS3绘制图形,在页面中定义 <div class="container"> <div class="shape"> ...
随机推荐
- hive安装准备 (mysql8.0安装)
1.先准备好安装的所需材料 2.开始准备安装 先安装mysql 解压命令:tar -xvJf (注意:这里' j '是大写) 解压后改名: mv mysql-8.0.24-linux-glibc2. ...
- ABC136 E - Max GCD 题解
题面 给定一个长度为 $N$ 的整数序列:$A_1, A_2, \ldots, A_n$. 您可以执行以下操作 $0 \sim K$ 次: 选择两个整数 $i$ 和 $j$,满足 $i \ne j$ ...
- dockerfile实践学习
一.dockerfile简介 镜像是分层存储的,每一层在前一层的基础上进行修改. 容器也是分层存储,已经向为基础层,在其他基础上加一层作为容器运行的存储层. 创建镜像的另种两种方法 手动修改容器内容, ...
- Mule获取Http参数
- Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test (default-test) on project
updated to from jdk16 Java jdk 8 or 11 to support jenkins Build run. Plugin management tags aligned ...
- 3. Tooltip 工具提示
1 <!DOCTYPE html> 2 <html lang="zh"> 3 <head> 4 <meta charset="U ...
- CG3Y/ CG3Z 程序迁移
/usr/sap/trans/cofiles/K900075.S4Q 固定值 文件目录(AL11)下去找 C:\Users\lenovo\Desktop\publici\K900075.S4Q /u ...
- 为什么JAVA中(byte)128结果为-128;(byte)-129结果为127
为什么JAVA中(byte)128结果为-128;(byte)-129结果为127 在JAVA中默认的整型为int型,int型占4个字节,为32位.byte占一个字节为8位. JAVA中的二进制都是采 ...
- 公共的common.scss (覆盖部分element组件主题色)
公共的 common.scss (包含主题色 覆盖部分element组件主题色) $theme: #D50000; $litterTheme: #ec6059; .text-theme { color ...
- Python冰墩墩(非原创,搬运工)
import turtle turtle.title('2022北京冬奥会冰墩墩') turtle.speed(10000) # 速度 # 左手 turtle.penup() turtle.goto( ...