zoukankan      html  css  js  c++  java
  • 【Hello AutoCAD 002】创建直线

    停了N长时间的VB.Net开发AutoCAD,我又开始重新学习了,希望这次能够坚持下去。

    这一次,对照教材开始创建实体对象。

    以下是代码和效果:

    Imports Autodesk.AutoCAD.DatabaseServices
    Imports Autodesk.AutoCAD.Geometry
    Imports Autodesk.AutoCAD.Runtime

    Public Class Class1
        '创建直线的命令
        <CommandMethod("FirstLine")> Public Sub TestLine()
            '得到当前文档的数据库对象
            Dim Db As Database = HostApplicationServices.WorkingDatabase
            '定义直线对象的起点
            Dim Pt1 As New Point3d(300, 100, 0)
            '定义直线兑现的重点
            Dim Pt2 As New Point3d(900, 500, 0)
            '在内存中创建一个直线对象
            Dim LineEnt As New Line(Pt1, Pt2)
            Using Trans As Transaction = Db.TransactionManager.StartTransaction()
                '以只读方式打开块表
                Dim Bt As BlockTable = Trans.GetObject(Db.BlockTableId, OpenMode.ForRead)
                '以写方式打开模型空间块表记录
                Dim Btr As BlockTableRecord = Trans.GetObject(Bt.Item(BlockTableRecord.ModelSpace), OpenMode.ForWrite)
                '将图形对象的信息添加到块表记录中,并返回ObjectId对象
                Btr.AppendEntity(LineEnt)
                '把直线添加到事务处理中
                Trans.AddNewlyCreatedDBObject(LineEnt, True)
                '提交事务处理
                Trans.Commit()
            End Using
        End Sub
    End Class

    image

     

    呵呵,最简单最简单的,可是谁写程序不是从“Hello world”开始的呢!加油!

  • 相关阅读:
    力扣452题、435题、56题(用最少量的箭引爆气球,无重叠区间,合并区间)
    力扣860题(柠檬水找零)
    力扣135题、406题(分发糖果、根据身高重建队列)
    力扣134题(加油站)
    力扣1005题(K次取反后最大化的数组和)
    力扣122题、714题(买卖股票)
    力扣53题(最大子序和)
    力扣376题(摆动序列)
    力扣455题(分发饼干)
    力扣51题(n皇后)
  • 原文地址:https://www.cnblogs.com/transteel/p/1803829.html
Copyright © 2011-2022 走看看