autoCAD 使用图层、颜色和线型

图层就像透明的覆盖层,用户可以在上面组织和编组各种不同的图形信息。用户创建的对象具有各种特性,包括图层、颜色和线型。颜色可以帮助用户区分图形中类似的元素,而线型则可以帮助用户区分不同的绘图元素,例如中心线或隐藏线。组织图层以及图层上的对象可以更容易地管理图形中的信息。

使用图层

用户总是在图层上绘制图形。可能是默认的图层,也可能是用户自己创建和命名的图层。每个图层都有关联的颜色和线型。例如,可以创建一个图层,在该图层上仅绘制中心线,并将图层颜色指定为蓝色,将图层线型指定为 CENTER。以后每次绘制中心线时,都可以切换到该图层再开始绘制。

所有图层和线型都保存在分开的符号表中。图层保存在层表的内部,线型保存线型表内部。

  1. 排序图层和线型
  2. 创建和命名图层
  3. 将图层设置为当前的
  4. 打开和关闭图层
  5. 冻结和解冻图层
  6. 锁定和解锁图层
  7. 指定图层颜色
  8. 指定图层线型
  9. 删除图层

排序图层和线型

用户可以遍历 Layers 和 Linetypes 表来查找图形中的所有图层和线型。

遍历层表

以下代码遍历 Layers 表,以合并图形中所有图层的名称,然后将这些名称显示在消息框中。  

Imports Autodesk.AutoCAD.Runtime
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.DatabaseServices
 
<CommandMethod("DisplayLayerNames")> _
Public Sub DisplayLayerNames()
  '' 获得当前文档和数据库   Get the current document and database
  Dim acDoc As Document = Application.DocumentManager.MdiActiveDocument
  Dim acCurDb As Database = acDoc.Database
 
  ''启动一个事务   Start a transaction
  Using acTrans As Transaction = acCurDb.TransactionManager.StartTransaction()
 
      '' 以只读方式打开图层表   Open the Layer table for read
      Dim acLyrTbl As LayerTable
      acLyrTbl = acTrans.GetObject(acCurDb.LayerTableId, _
                                   OpenMode.ForRead)
 
      Dim sLayerNames As String = ""
 
      For Each acObjId As ObjectId In acLyrTbl
          Dim acLyrTblRec As LayerTableRecord
          acLyrTblRec = acTrans.GetObject(acObjId, _
                                          OpenMode.ForRead)
 
          sLayerNames = sLayerNames & vbLf & acLyrTblRec.Name
      Next
 
      Application.ShowAlertDialog("The layers in this drawing are: " & _
                                  sLayerNames)
 
      '' 销毁事务  Dispose of the transaction
  End Using
End Sub

创建和命名图层

用户可以创建新图层然后赋予这些图层颜色和线型特性。每个单独图层都是层表的一部分。使用 Add 函数创建一个新图层然后添加它到层表中去。

用户可以在创建图层时指定图层名称。要在创建图层后更改图层名,请使用 Name 特性。图层名称最多可包含255个字符,名称中可以包含字母、数字以及特殊字符美元符号 ($)、连字符 (-) 和下划线 (_)。

创建新图层,指定为红色,然后向图层添加对象

以下代码创建一个新图层和一个圆。新的图层指定使用红色。圆被指定到该图层,然后其颜色也相应改变。  

Imports Autodesk.AutoCAD.Runtime
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.DatabaseServices
Imports Autodesk.AutoCAD.Geometry
Imports Autodesk.AutoCAD.Colors
 
<CommandMethod("CreateAndAssignALayer")> _
Public Sub CreateAndAssignALayer()
  '' 获得当前文档和数据库   Get the current document and database
  Dim acDoc As Document = Application.DocumentManager.MdiActiveDocument
  Dim acCurDb As Database = acDoc.Database
 
  ''启动一个事务   Start a transaction
  Using acTrans As Transaction = acCurDb.TransactionManager.StartTransaction()
 
      '' 以只读方式打开图层表   Open the Layer table for read
      Dim acLyrTbl As LayerTable
      acLyrTbl = acTrans.GetObject(acCurDb.LayerTableId, _
                                   OpenMode.ForRead)
 
      Dim sLayerName As String = "Center"
 
      If acLyrTbl.Has(sLayerName) = False Then
          Dim acLyrTblRec As LayerTableRecord = New LayerTableRecord()
 
          '' 赋值层 ACI 颜色 1 和一个名字  Assign the layer the ACI color 1 and a name
          acLyrTblRec.Color = Color.FromColorIndex(ColorMethod.ByAci, 1)
          acLyrTblRec.Name = sLayerName
 
          '' 升级层表为可写  Upgrade the Layer table for write
          acLyrTbl.UpgradeOpen()
 
          '' 添加新的层到层表和事务中去  Append the new layer to the Layer table and the transaction
          acLyrTbl.Add(acLyrTblRec)
          acTrans.AddNewlyCreatedDBObject(acLyrTblRec, True)
      End If
 
      '' 以只读方式打开块表   Open the Block table for read
      Dim acBlkTbl As BlockTable
      acBlkTbl = acTrans.GetObject(acCurDb.BlockTableId, _
                                   OpenMode.ForRead)
 
      '' 以写方式打开模型空间块表记录   Open the Block table record Model space for write
      Dim acBlkTblRec As BlockTableRecord
      acBlkTblRec = acTrans.GetObject(acBlkTbl(BlockTableRecord.ModelSpace), _
                                      OpenMode.ForWrite)
 
      ''创建一个圆对象 Create a circle object
      Dim acCirc As Circle = New Circle()
      acCirc.SetDatabaseDefaults()
      acCirc.Center = New Point3d(2, 2, 0)
      acCirc.Radius = 1
      acCirc.Layer = sLayerName
 
      acBlkTblRec.AppendEntity(acCirc)
      acTrans.AddNewlyCreatedDBObject(acCirc, True)
 
      ''保存更改并销毁事务   Save the changes and dispose of the transaction
      acTrans.Commit()
  End Using
End Sub

将图层设置为当前的

用户总是在活动的图层上绘制图形。图层置为活动时,用户可以在该图层上创建新对象。如果将其他图层置为活动图层,所有新对象都将在新的活动图层上创建并且使用该图层的颜色和线型。如果图层被冻结,则不能将其置为活动。

若要使一个图层成为活动的,请使用 Database 对象的 Clayer 属性或 CLAYER 系统变量。

通过数据库将一个图层设置为当前图层

本示例通过 Database 对象的 Clayer 属性将一个图层设置为当前图层。

Imports Autodesk.AutoCAD.Runtime
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.DatabaseServices
 
<CommandMethod("SetLayerCurrent")> _
Public Sub SetLayerCurrent()
  '' 获得当前文档和数据库   Get the current document and database
  Dim acDoc As Document = Application.DocumentManager.MdiActiveDocument
  Dim acCurDb As Database = acDoc.Database
 
  ''启动一个事务   Start a transaction
  Using acTrans As Transaction = acCurDb.TransactionManager.StartTransaction()
 
      '' 以只读方式打开图层表   Open the Layer table for read
      Dim acLyrTbl As LayerTable
      acLyrTbl = acTrans.GetObject(acCurDb.LayerTableId, _
                                   OpenMode.ForRead)
 
      Dim sLayerName As String = "Center"
 
      If acLyrTbl.Has(sLayerName) = True Then
          '' 设置 Center 层为当前图层   Set the layer Center current
          acCurDb.Clayer = acLyrTbl(sLayerName)
 
          '' 保存修改  Save the changes
          acTrans.Commit()
      End If
 
      '' 销毁事务  Dispose of the transaction
  End Using
End Sub

打开和关闭图层

关闭的图层将和图形一起重生成,但不能显示或打印。通过关闭图层,可以避免每次解冻图层时都重生成图形。打开已关闭的图层时,AutoCAD 将重画该图层上的对象。  

使用代表图层的 LayerTableRecord 对象的 IsOff 属性打开和关闭图层。如果为此特性输入 TRUE,将关闭图层;如果输入 FALSE,将打开图层。  

关闭图层

本例创建一个新图层并关闭它,然后添加一个圆到这个图层中,所以这个圆不再可见。

Imports Autodesk.AutoCAD.Runtime
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.DatabaseServices
Imports Autodesk.AutoCAD.Geometry
 
<CommandMethod("TurnLayerOff")> _
Public Sub TurnLayerOff()
  '' 获得当前文档和数据库   Get the current document and database
  Dim acDoc As Document = Application.DocumentManager.MdiActiveDocument
  Dim acCurDb As Database = acDoc.Database
 
  ''启动一个事务   Start a transaction
  Using acTrans As Transaction = acCurDb.TransactionManager.StartTransaction()
 
      '' 以只读方式打开图层表   Open the Layer table for read
      Dim acLyrTbl As LayerTable
      acLyrTbl = acTrans.GetObject(acCurDb.LayerTableId, _
                                   OpenMode.ForRead)
 
      Dim sLayerName As String = "ABC"
      Dim acLyrTblRec As LayerTableRecord
 
      If acLyrTbl.Has(sLayerName) = False Then
          acLyrTblRec = New LayerTableRecord()
 
          '' 为图层指定一个名称  Assign the layer a name
          acLyrTblRec.Name = sLayerName
 
          '' 升级层表为可写  Upgrade the Layer table for write
          acLyrTbl.UpgradeOpen()
 
          '' 追加一个新的图层到层表和事务中去  Append the new layer to the Layer table and the transaction
          acLyrTbl.Add(acLyrTblRec)
          acTrans.AddNewlyCreatedDBObject(acLyrTblRec, True)
      Else
          acLyrTblRec = acTrans.GetObject(acLyrTbl(sLayerName), _
                                          OpenMode.ForWrite)
      End If
 
      '' 关闭图层  Turn the layer off
      acLyrTblRec.IsOff = True
 
      '' 以只读方式打开块表   Open the Block table for read
      Dim acBlkTbl As BlockTable
      acBlkTbl = acTrans.GetObject(acCurDb.BlockTableId, _
                                   OpenMode.ForRead)
 
      '' 以写方式打开模型空间块表记录   Open the Block table record Model space for write
      Dim acBlkTblRec As BlockTableRecord
      acBlkTblRec = acTrans.GetObject(acBlkTbl(BlockTableRecord.ModelSpace), _
                                      OpenMode.ForWrite)
 
      '' 创建一个圆对象   Create a circle object
      Dim acCirc As Circle = New Circle()
      acCirc.SetDatabaseDefaults()
      acCirc.Center = New Point3d(2, 2, 0)
      acCirc.Radius = 1
      acCirc.Layer = sLayerName
 
      acBlkTblRec.AppendEntity(acCirc)
      acTrans.AddNewlyCreatedDBObject(acCirc, True)
 
      '' 保存更改并销毁事务   Save the changes and dispose of the transaction
      acTrans.Commit()
  End Using
End Sub

冻结和解冻图层

用户可以冻结图层以加快显示改变的速度,提高对象选择性能,以及减少复杂图形的重生成时间。AutoCAD 不会显示、打印或重生成冻结图层上的对象。可以冻结长时间不需要显示的图层。在“解冻”冻结的图层时,AutoCAD 将重新生成并显示该图层上的对象。  

要冻结或解冻图层,请使用 IsFrozen 特性。如果为此特性输入 TRUE,将冻结图层;如果输入 FALSE,将解冻图层。

冻结图层

本例创建一个新图层命名为“ABC”然后冻结这个图层。

Imports Autodesk.AutoCAD.Runtime
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.DatabaseServices
 
<CommandMethod("FreezeLayer")> _
Public Sub FreezeLayer()
  '' 获得当前文档和数据库   Get the current document and database
  Dim acDoc As Document = Application.DocumentManager.MdiActiveDocument
  Dim acCurDb As Database = acDoc.Database
 
  ''启动一个事务   Start a transaction
  Using acTrans As Transaction = acCurDb.TransactionManager.StartTransaction()
 
      '' 以只读方式打开图层表   Open the Layer table for read
      Dim acLyrTbl As LayerTable
      acLyrTbl = acTrans.GetObject(acCurDb.LayerTableId, _
                                   OpenMode.ForRead)
 
      Dim sLayerName As String = "ABC"
      Dim acLyrTblRec As LayerTableRecord
 
      If acLyrTbl.Has(sLayerName) = False Then
          acLyrTblRec = New LayerTableRecord()
 
          ''为一个图层指定一个名字   Assign the layer a name
          acLyrTblRec.Name = sLayerName
 
          ''升级一个层表为可写   Upgrade the Layer table for write
          acLyrTbl.UpgradeOpen()
 
          '' 追加一个新的图层到层表和事务中   Append the new layer to the Layer table and the transaction
          acLyrTbl.Add(acLyrTblRec)
          acTrans.AddNewlyCreatedDBObject(acLyrTblRec, True)
      Else
          acLyrTblRec = acTrans.GetObject(acLyrTbl(sLayerName), _
                                          OpenMode.ForWrite)
      End If
 
      '' 冻结图层  Freeze the layer
      acLyrTblRec.IsFrozen = True
 
      ''保存更改并销毁事务   Save the changes and dispose of the transaction
      acTrans.Commit()
  End Using
End Sub

锁定和解锁图层

用户不能编辑锁定图层上的对象,但如果图层是打开和解冻的,这些对象仍然可见。可以将锁定图层置为当前并在其上添加对象。可以冻结和关闭锁定图层,也可以更改其关联的颜色和线型。 

要锁定或解锁图层,请使用 IsLocked 特性。如果为此特性输入 TRUE,将锁定图层;如果输入 FALSE,将解锁图层。 

锁定图层

本例创建一个称为“ABC”的新图层,然后锁定该图层。 

Imports Autodesk.AutoCAD.Runtime
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.DatabaseServices
 
<CommandMethod("LockLayer")> _
Public Sub LockLayer()
  '' 获得当前文档和数据库   Get the current document and database
  Dim acDoc As Document = Application.DocumentManager.MdiActiveDocument
  Dim acCurDb As Database = acDoc.Database
 
  ''启动一个事务   Start a transaction
  Using acTrans As Transaction = acCurDb.TransactionManager.StartTransaction()
 
      '' 以只读方式打开图层表   Open the Layer table for read
      Dim acLyrTbl As LayerTable
      acLyrTbl = acTrans.GetObject(acCurDb.LayerTableId, _
                                   OpenMode.ForRead)
 
      Dim sLayerName As String = "ABC"
      Dim acLyrTblRec As LayerTableRecord
 
      If acLyrTbl.Has(sLayerName) = False Then
          acLyrTblRec = New LayerTableRecord()
 
          '' Assign the layer a name
          acLyrTblRec.Name = sLayerName
 
          '' 升级图层表为可写   Upgrade the Layer table for write
          acLyrTbl.UpgradeOpen()
 
          '' 追加新图层到层表和事务中  Append the new layer to the Layer table and the transaction
          acLyrTbl.Add(acLyrTblRec)
          acTrans.AddNewlyCreatedDBObject(acLyrTblRec, True)
      Else
          acLyrTblRec = acTrans.GetObject(acLyrTbl(sLayerName), _
                                          OpenMode.ForWrite)
      End If
 
      '' Lock the layer
      acLyrTblRec.IsLocked = True
 
      ''保存更改并销毁事务   Save the changes and dispose of the transaction
      acTrans.Commit()
  End Using
End Sub

指定图层颜色

每个图层都有自己的颜色。图层的颜色是通过 Colors 命名空间中的 Color 对象来标识的。此对象可以是 RGB 值、ACI 编号(从 1 到 255 的整数)或命名颜色。

要指定图层颜色,请使用 Color 属性。

注意像直线和圆这样的对象支持两个不同的属性来控制它们的当前颜色。Color 属性用于指定一个 RGB 值,ACI 编号或命名颜色,而 ColorIndex 属性仅支持 ACI 编号。

如果使用ACI中编号为0或 ByBlock,AutoCAD 绘制的新对象将使用默认颜色(白色或黑色,具体要依赖于你的配置)直到它们被放入块中。当插入块时,块中的对象将继承当前设置中的属性

如果使用ACI中编号为0或 ByLayer,新对象将继承它们所在层的颜色。

设置图层的颜色

下面的示例创建三个新图层并使用三个不同的颜色方法给每个图层指定不同的颜色。 

Imports Autodesk.AutoCAD.Runtime
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.DatabaseServices
Imports Autodesk.AutoCAD.Colors
 
<CommandMethod("SetLayerColor")> _
Public Sub SetLayerColor()
  '' 获得当前文档和数据库   Get the current document and database
  Dim acDoc As Document = Application.DocumentManager.MdiActiveDocument
  Dim acCurDb As Database = acDoc.Database
 
  ''启动一个事务   Start a transaction
  Using acTrans As Transaction = acCurDb.TransactionManager.StartTransaction()
 
      '' 以只读方式打开图层表   Open the Layer table for read
      Dim acLyrTbl As LayerTable
      acLyrTbl = acTrans.GetObject(acCurDb.LayerTableId, _
                                   OpenMode.ForRead)
 
      '' 定义图层名的数组   Define an array of layer names
      Dim sLayerNames(2) As String
      sLayerNames(0) = "ACIRed"
      sLayerNames(1) = "TrueBlue"
      sLayerNames(2) = "ColorBookYellow"
 
      ''定义图层的颜色的数组   Define an array of colors for the layers
      Dim acColors(2) As Color
      acColors(0) = Color.FromColorIndex(ColorMethod.ByAci, 1)
      acColors(1) = Color.FromRgb(23, 54, 232)
      acColors(2) = Color.FromNames("PANTONE Yellow 0131 C", _
                                    "PANTONE(R) pastel coated")
 
      Dim nCnt As Integer = 0
 
      '' 添加或更改在图形中的每个图层   Add or change each layer in the drawing
      For Each sLayerName As String In sLayerNames
          Dim acLyrTblRec As LayerTableRecord
 
          If acLyrTbl.Has(sLayerName) = False Then
              acLyrTblRec = New LayerTableRecord()
 
              '' 指定图层名称   Assign the layer a name
              acLyrTblRec.Name = sLayerName
 
              '' 升级层表为可写Upgrade the Layer table for write
              If acLyrTbl.IsWriteEnabled = False Then acLyrTbl.UpgradeOpen()
 
              ''追加新的图层到层表和事务中   Append the new layer to the Layer table and the transaction
              acLyrTbl.Add(acLyrTblRec)
              acTrans.AddNewlyCreatedDBObject(acLyrTblRec, True)
          Else
              '' 如果层已经存在就以可写方式打开  Open the layer if it already exists for write
              acLyrTblRec = acTrans.GetObject(acLyrTbl(sLayerName), _
                                              OpenMode.ForWrite)
          End If
 
          '' 设置图层的颜色   Set the color of the layer
          acLyrTblRec.Color = acColors(nCnt)
 
          nCnt = nCnt + 1
      Next
 
      ''保存更改并销毁事务   Save the changes and dispose of the transaction
      acTrans.Commit()
  End Using
End Sub

指定图层线型

当你定义图层后,线型提供了另外的一种方法来表达视觉信息。线型是一个由虚线、点和空格重复组成的图案,可以用来区分线条的用途。

线型名及其定义描述了特定的点划序列、虚线和空格的相对长度,以及任何包含的文字或形的特性。

要指定图层线型,请使用 Linetype 特性。此特性需要输入线型的名称。

注意线型在被指定给图层之前必须首先在图形中被定义好。

设置图层的线型

下面的示例创建一个名字为“ABC”的新图层然后给它指定线型“Center”。

Imports Autodesk.AutoCAD.Runtime
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.DatabaseServices
 
<CommandMethod("SetLayerLinetype")> _
Public Sub SetLayerLinetype()
  '' 获得当前文档和数据库   Get the current document and database
  Dim acDoc As Document = Application.DocumentManager.MdiActiveDocument
  Dim acCurDb As Database = acDoc.Database
 
  ''启动一个事务   Start a transaction
  Using acTrans As Transaction = acCurDb.TransactionManager.StartTransaction()
 
      '' 以只读方式打开图层表   Open the Layer table for read
      Dim acLyrTbl As LayerTable
      acLyrTbl = acTrans.GetObject(acCurDb.LayerTableId, _
                                   OpenMode.ForRead)
 
      Dim sLayerName As String = "ABC"
      Dim acLyrTblRec As LayerTableRecord
 
      If acLyrTbl.Has(sLayerName) = False Then
          acLyrTblRec = New LayerTableRecord()
 
          ''指定图层的名字  Assign the layer a name
          acLyrTblRec.Name = sLayerName
 
          '' 升级图层表为可写   Upgrade the Layer table for write
          acLyrTbl.UpgradeOpen()
 
          '' 追加新图层到层表和事务中  Append the new layer to the Layer table and the transaction
          acLyrTbl.Add(acLyrTblRec)
          acTrans.AddNewlyCreatedDBObject(acLyrTblRec, True)
      Else
          acLyrTblRec = acTrans.GetObject(acLyrTbl(sLayerName), _
                                          OpenMode.ForRead)
      End If
 
      '' 以只读方式打开图层表   Open the Layer table for read
      Dim acLinTbl As LinetypeTable
      acLinTbl = acTrans.GetObject(acCurDb.LinetypeTableId, _
                                   OpenMode.ForRead)
 
      If acLinTbl.Has("Center") = True Then
          '' 升级层表记录为可写   Upgrade the Layer Table Record for write
          acLyrTblRec.UpgradeOpen()
 
          ''设置图层的线型    Set the linetype for the layer
          acLyrTblRec.LinetypeObjectId = acLinTbl("Center")
      End If
 
      ''保存更改并销毁事务   Save the changes and dispose of the transaction
      acTrans.Commit()
  End Using
End Sub

删除图层

在图形任务期间,随时可以删除图层。但不能删除当前图层、图层 0、依赖于外部参照的图层和包含对象的图层。

若要删除一个图层,请使用 Erase 方法。推荐使用 Purge 函数检验图层是否可以被清除,它会一起检验它不是图层 0、Defpoints 或当前图层。

注意对于被块定义参照的图层以及特殊的图层 DEFPOINTS,即使其中没有包含可见对象也不能被删除。 

Imports Autodesk.AutoCAD.Runtime
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.DatabaseServices
 
<CommandMethod("EraseLayer")> _
Public Sub EraseLayer()
  '' 获得当前文档和数据库   Get the current document and database
  Dim acDoc As Document = Application.DocumentManager.MdiActiveDocument
  Dim acCurDb As Database = acDoc.Database
 
  ''启动一个事务   Start a transaction
  Using acTrans As Transaction = acCurDb.TransactionManager.StartTransaction()
 
      '' 以只读方式打开图层表   Open the Layer table for read
      Dim acLyrTbl As LayerTable
      acLyrTbl = acTrans.GetObject(acCurDb.LayerTableId, _
                                   OpenMode.ForRead)
 
      Dim sLayerName As String = "ABC"
 
      If acLyrTbl.Has(sLayerName) = True Then
          ''检查图层是否可以被安全的删除   Check to see if it is safe to erase layer
          Dim acObjIdColl As ObjectIdCollection = New ObjectIdCollection()
          acObjIdColl.Add(acLyrTbl(sLayerName))
          acCurDb.Purge(acObjIdColl)
 
          If acObjIdColl.Count > 0 Then
              Dim acLyrTblRec As LayerTableRecord
              acLyrTblRec = acTrans.GetObject(acObjIdColl(0), OpenMode.ForWrite)
 
              Try
                  '' 删除未引用的图层     Erase the unreferenced layer
                  acLyrTblRec.Erase(True)
 
                  ''保存更改并销毁事务   Save the changes and dispose of the transaction
                  acTrans.Commit()
              Catch Ex As Autodesk.AutoCAD.Runtime.Exception
                  '' 图层不能被删除    Layer could not be deleted
                  Application.ShowAlertDialog("Error:\n" + Ex.Message)
              End Try
          End If
      End If
  End Using
End Sub

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值