用vb.net\SQLServer开发cad图库系统

摘 要 :本文介绍用VB.、SQL server开发cad图库系统.文章重点介绍用VB.进行Autocad的二次开发,主要涉及DWG图中缩略图的提取,从服务器的数据库中下载数据并作为图块插入cad图中.

关 键 词 :VB.;Autocad;SQL server;图库

中图分类号:TP391.省略,SQL Server

Li Guijian

(Liuzhou Architecture Design Institute of Science and Technology,Liuzhou545001,China)

Abstract:This paper describes the development of a cad library system using VB.,SQL server.省略 to the secondary development of Autocad,mainly related to the extraction of the DWG Figure thumbnail to download data from the database server and inserted as a block cad figure.省略,Autocad,SQL server,Gallery

一、前言

长期应用Autocad进行设计工作的设计人员都保存有一些cad模板和一些常用的样图.本系统目的就是把所有设计人员手中的资源和一些常用的标准图整合起来,存放到服务器上,方便设计人员在用cad作图时查阅和将有用的图插入工作图中.

Autocad从2005版本以后增加对VB.省略有良好的开发环境及众多的使用者,本系统利用SQL server存放图样资源,应用VB.省略.

(二)系统工作图

管理员利用图库管理程序,将通过审查的图样上传到数据库并定期维护,设计人员通过嵌入Autocad2006中的扩展应用程序浏览图库,选中合用的图样插入dwg工作图中.

三、数据库表和管理系统设计

(一)数据库设计

数据库采用SQL Server 2005,安装在操作系统为2003的服务哭上,系统数据库包含两个表,一个表是存放图库资源,另一个表是存放管理人员、使用人员的名单和登陆.

1.1图库资源表结构

列名 类型

ID Int

名称 Nvarvhar(16)

大样图 Image

缩略图 Image

上级节点ID Int

1.2用户帐户表结构

列名 类型

用户名 Nvarchar(16)

登录 Nvarchar(16)

权限 Beloon

四、图库管理程序设计

图库管理程序用于图库系统的管理.流程图如下:

程序设计中有两个关键点:从dwg格式的图中提取缩略图并转为bmp格式和将缩略图及dwg格式的图形上传至数据库,详细代码如下:

Private Sub Send_dwg(ByVal filename As String , ByVal name As String)

‘filename为带路径dwg文件名, name为要存放在数据库中的名称

Dim f_stream As FileStream ‘获取dwg图的数据流

f_stream 等于 New FileStream(filename, FileMode.Open, FileAccess.Read)

Dim f_byte(f_stream.Length) As Byte

f_stream.Read(f_byte, 0, f_byte.Length)‘将数据流读入数组f_byte

f_stream.Close()

Dim fs As MemoryStream

fs 等于 dwg_preview(filename) ‘获取缩略图的内存文件流

Dim f_b(fs.Length) As Byte

fs.Position 等于 0

fs.Read(f_b, 0, fs.Length) ‘将内存文件流读入数组

fs.Flush()

fs.Close()

Dim _string As String

Dim cm_text As String

_string 等于 “Data Source等于tk,Initial Catalog等于dwg,Persist Security Info等于True,User_ ID等于sa,Password等于123456” ‘连接数据库的字符串

cm_text 等于 “insert into dwg图库(名称,缩略图,图,类别) values(@wjm,@slt,@tu,’建筑’)”

‘将数据插入数据库的表中的字符串

Dim As New SqlConnection

.ConnectionString 等于 _string

Dim cm As New SqlCommand

cm.Connection 等于

cm.CommandText 等于 cm_text

cm.Parameters.Add(“wjm”, SqlDbType.Char)

cm.Parameters.Add(“slt”, SqlDbType.Image)

cm.Parameters.Add(“tu”, SqlDbType.Image)

.Open()‘打开连接,存入数据

cm.Parameters(0).Value 等于 name

cm.Parameters(1).Value 等于 f_b

cm.Parameters(2).Value 等于 f_byte

.省略作为程序设计语言.

(二)流程图

(三)选择插入dwg图的对话框

(四)程序设计要点

新建“库类”项目,在引用中添加“cadbmgd.dll”和“acmgd.dll”两个文件,这两个文件位于Autocad的安装目录下,在编写代码时还要导入Autodesk.AutoCAD开头的命名空间.

六、安装程序的设计

应用程序扩展(*.dll)设计好后,还要设计一个安装程序.安装程序的作用是把应用程序扩展(*.dll)拷贝到客户机上,并修改注册表使得用户启动AutoCAD时自动加载应用程序扩展(*.dll).这样只要在AutoCAD的命令行中输入一个命令,即可启动图库应用系统.


程序设计的要点是在注册表中添加相关的内容,这就涉及注册表的读写.这里采用.NET框架的Microsoft.省略 编写,利用Autocad作为平台,利用已有的服务器,开发出设计适合我院设计人员使用CAD图库系统.本系统已在本院实施应用,极大的方便广大设计人员,为提高设计人员的画图速度起到较大作用.

类似论文

基于Flash的智能题库系统开发

摘 要:随着互联网与移动设备的不断发展,移动学习已成为一大亮点,课堂教学已经无法满足学生需求 然而,传统௚。
更新日期:2024-6-2 浏览量:13340 点赞量:4296

高中物理题库系统的开发

一、进行物理题库系统开发的意义 在当前新课程大力推进的背景下,依据学科课程标准进行题库系统的。
更新日期:2024-2-6 浏览量:8328 点赞量:3103

图库一体化技术

摘 要:对在用的基础测绘软件和现有基础测绘成果分析得出,现有DWG格式制图数据成果中相当一部分已经包含了GIS数据,只是没有存储为。
更新日期:2024-12-16 浏览量:153117 点赞量:32064

基于VFP9商务礼仪题库系统的开发

随着现代信息技术的飞速发展,高校教育中电子化应用手段越来越普及,从采用电子教案备课到进行多媒体课堂讲授,从网络作业远程答疑到模。
更新日期:2024-12-28 浏览量:157549 点赞量:33838

题库系统的设计思想

[摘 要]考试作为考核学生掌握所学知识的重要手段,是教学活动中的一个重要环节,如何使考试能适应现代教育。
更新日期:2024-8-7 浏览量:15052 点赞量:4239

关于室内设计CAD图库的想法

摘 要:重复利用已有的资源,是提供绘图效率的重要手段,CAD图库既是最普遍的可重复利用的资源,也是一层。
更新日期:2024-12-9 浏览量:21398 点赞量:5878