QCAD插件开发-卡核

QCAD插件开发

QCAD插件开发的三种模式 纯EcmaJavascript模式 在qcad程序安装目录下的scripts文件夹下新建对应的文件夹和文件,文件夹、文件名以及类名三者保持一致。这种方式可以避免编译,暴露代码方便编辑修...
QCAD中的监听模式-卡核

QCAD中的监听模式

监听模式 一种一对多的关系,多个观察者(Observer)监听同一个被观察者(Subject)。被观察者对象在状态或数据发生变化时,会通知所有观察者对象,...
QCAD C++ & JavaScript 混合编程-卡核

QCAD C++ & JavaScript 混合编程

JavaScript 调用 C++ 函数 QCAD源码工程模块 src\\scripting\\ecmaapi 重新封装了底层模块 core、entity、gui等的函数接口,供应用层(界面)ECMAJavaScript调用。 示例: ...
QCAD 几何实体关系解析-卡核

QCAD 几何实体关系解析

RObject:QCAD最基本的基类。RPropertyTypeId:定义QCAD实体对象的属性类。RPropertyAttributes:定义属性(RPropertyTypeId)的属性,如:只读、整数类型、列表类型等等。REntity:QCAD...
QCAD dxf 扩展属性-卡核

QCAD dxf 扩展属性

XData是CAD开放给用户(程序员)的一个功能接口:可以往CAD实体上写入/绑定你的个人信息,CAD不会理会/管理你的个人信息,但会保存到DXF文件中。同时你也可以读...
QCAD自动化编译测试-卡核

QCAD自动化编译测试

使用GitHub Actions 自动化编译QCAD 编写自动化编译流水线文件Windows.yaml # This is a basic workflow to help you get started with Actions name: Windows # Controls when the action will...
QCAD qt ecmajavascript sqlite3-卡核

QCAD qt ecmajavascript sqlite3

javascript 封装Qt sql API /** * Provides a connection to a SQLite database. * * \\param connectionName The connection name to use. */ function DbConnection(connectionName) { if (is...
QCAD ecmajavacript generator-卡核

QCAD ecmajavacript generator

ecmagenerator Generating script bindings for the QCAD Application Framework...... 脚本目录:qcad/support/ecmagenerator/generate.sh #!/bin/bash if [ ! -z $1 ]; then scope=...
proj4.js坐标转换-卡核

proj4.js坐标转换

投影带和中央经线计算 /** * 投影带的带号计算:通过用户输入的经纬度及定义的投影带宽度,得到该经纬度下投影带的带号 * @param long 输入 用户输入的经度 * @param pro...
QCAD 中文编码问题-卡核

QCAD 中文编码问题

dxf文件为文本文件,中文编码可能是utf-8编码,也有可能是GBK编码。QCAD使用Qt开发环境,字符串统一按照utf-8编码解码, 所以解析dxf文件时对字符串首先按照utf-8转码&...
QCAD集成 proj4.js-卡核

QCAD集成 proj4.js

qcad 集成 proj4.js 安装依赖 wkt-parser.js 下载源码 wkt-parser修改源码 wkt-parser 在文件头添加如下代码: if (typeof(global)==="undefined") { global &#...
QCAD 扩展开发-卡核

QCAD 扩展开发

QCAD 扩展开发 功能列表图层管理器 菜单[ Extensions(扩展)]->[Layer Manager (图层管理器)]操作 过滤筛选 示例 列表多选可见、隐藏、锁定、解锁和删除操作 查询过滤器 菜单[ ...