Você está aqui: AutoCAD Civil 3D .NET C# ::: Dicas & Truques ::: Coordinated Geometry Points (COGO Points) |
Como criar um COGO Point usando a função Add() do objeto CogoPointCollection da AutoCAD Civil 3D .NET APIQuantidade de visualizações: 492 vezes |
|
Em várias situações nós precisamos criar novos pontos Coordinated Geometry Points (COGO points). Um ponto COGO Point é um pouco mais complicado que o ponto comum do AutoCAD, pois um COGO Point possui um número de identificação único, um nome, uma descrição, etc. COGO Points podem ser criados no Civil 3D na aba Home -> Create Ground Data. Em seguida só precisamos acessar o item Point e várias de suas opções, entre elas Point Creation Tools. Nesta dica mostrarei como podemos criar um novo ponto COGO usando C#. Para isso nós vamos criar um objeto Point3d e atribuir a ele a localização escolhida pelo usuário na tela de desenho do AutoCAD Civil 3D. De posse da localização do ponto, nós vamos usar a função Add() do objeto CogoPointCollection, que representa todos os pontos COGO no documento atual. Note como acessamos o objeto CogoPoint recém-criado para ajustar algumas de suas propriedades. Veja o código AutoCAD Civil 3D .NET C# completo para o exemplo: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
using Autodesk.AutoCAD.Runtime;
using Autodesk.Civil.ApplicationServices;
using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.AutoCAD.ApplicationServices;
using Autodesk.AutoCAD.EditorInput;
using Autodesk.Civil.DatabaseServices;
using Autodesk.AutoCAD.Geometry;
namespace Estudos {
public class Class1 : IExtensionApplication {
[CommandMethod("COGOPoint")]
public void COGOPoint() {
// vamos obter uma referência ao documento atual do Civil 3D
CivilDocument doc = CivilApplication.ActiveDocument;
// obtemos o editor
Editor editor = Application.DocumentManager.MdiActiveDocument.Editor;
// vamos iniciar um nova transação
using (Transaction ts = Application.DocumentManager.MdiActiveDocument.
Database.TransactionManager.StartTransaction()) {
try {
// vamos pedir para o usuário informar a posição do COGO Point
PromptPointOptions ppo = new PromptPointOptions(
"\nInforme a posição do COGO Point:");
PromptPointResult ppr = editor.GetPoint(ppo);
// o usuário não informou a posição
if (ppr.Status != PromptStatus.OK) {
return;
}
// vamos criar um Point3d a partir da localização informada
Point3d posicao = ppr.Value;
// Todos os pontos em um documento do AutoCAD Civil 3D são guardados em
// um objeto CogoPointCollection
CogoPointCollection cogoPoints = CivilApplication.ActiveDocument.CogoPoints;
// vamos adicionar este ponto à coleção de pontos
ObjectId pointId = cogoPoints.Add(posicao, "Um ponto da Topografia", false);
// abre o ponto recém-criado para escrita
CogoPoint cogoPoint = pointId.GetObject(OpenMode.ForWrite) as CogoPoint;
// e ajustamos algumas propriedades
cogoPoint.PointName = "Ponto_Base_Topografia";
cogoPoint.RawDescription = "Este é um ponto base da topografia";
// e mostramos uma mensagem de sucesso
editor.WriteMessage("\nO ponto foi criado com o ID " +
pointId.ToString() + "\n");
ts.Commit();
}
catch (System.Exception e) {
// vamos tratar o erro
editor.WriteMessage("Erro: {0}", e.Message);
}
}
}
public void Initialize() {
// pode deixar em branco
}
public void Terminate() {
// pode deixar em branco
}
}
}
Ao executar este código AutoCAD Civil 3D C# .NET nós teremos o seguinte resultado: Informe a posição do COGO Point: O ponto foi criado com o ID (2181297655424) |
|
|
Veja mais Dicas e truques de AutoCAD Civil 3D .NET C# |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






