Operações do AutoCAD com pyautocad

Nesta postagem do blog , apresentarei algumas operações muito comuns do AutoCAD e como podemos implementá-las em um script Python usando pyautocad. Discutiremos como copiar, mover/colar, excluir, girar, deslocar, dimensionar e realçar objetos.

Configurando o script Python e o modelo do AutoCAD

Em primeiro lugar, vamos configurar nosso ambiente de trabalho para executar ações no modelo do AutoCAD usando o módulo pyautocad do Python.

from pyautocad import Autocad, APoint, aDouble
from math import *

acad = Autocad(create_if_not_exists=True)

Adicionando objetos do AutoCAD ao modelo de desenho usando pyautocad em Python

Como já discutimos em nossos blogs anteriores nesta série de pyautocad sobre a criação de objetos, desenharemos alguns objetos para executar as operações neles conforme mencionado acima.

c1 = acad.model.AddCircle(APoint(100, 100, 0), 100)
l1 = acad.model.AddLine(APoint(100,100), APoint(300, 350))
el1 = acad.model.AddEllipse(APoint(250, 300), APoint(700, 450), 0.5)

Então, criamos um círculo, uma linha e uma elipse.

Vamos ampliar os objetos criados usando o método “ZoomExtents”. Este comando funciona da mesma forma que o comando padrão “zoom all” no AutoCAD.

acad.app.ZoomExtents()
Figura 1: Objetos de prática

Usando métodos de copiar, mover e excluir para operações básicas do AutoCAD

Como esboçamos os objetos básicos do AutoCAD , começaremos com três dos comandos mais usados, ou seja, copiar, mover e excluir.

A maneira como a cópia funciona ao usar o pyautocad é que podemos criar uma cópia de um objeto existente, armazená-lo em uma variável e usar o método “Mover” para colá-lo no local desejado.

c2 = c1.Copy()

c2.Move(APoint(100, 100), APoint(300, 300))

Aqui, estamos copiando o círculo “c1″ e armazenando a réplica dele na variável “c2”. Em seguida, estamos copiando-o de seu ponto central existente, ou seja, (100, 100, 0) para (300, 300, 0) usando o método “Move”.

Figura 2.1: Círculo copiado c1 a c2

Como você pode ver nas Figuras 1 e 2, copiamos o círculo 1 para um novo local. Agora, se não quisermos nosso círculo anterior “c1”, podemos Excluí-lo; caso contrário, poderíamos ter movido o círculo “c1” usando o método Move em vez de copiá-lo.

Vamos deletar o círculo “c1” agora.

Figura 2.2: Círculo excluído c1

Girar objetos do AutoCAD com pyautocad em Python

Agora, vamos discutir como girar objetos. Aqui, copiaremos a linha l1 e giraremos a mesma de seu ponto base existente (100, 100, 0) para 90 graus.

l2 = l1.Copy()

l2.Rotate(APoint(100,100), pi*90/180)
Figura 3: Linha rotacionada l1 a l2

Desloca objetos no AutoCAD usando pyautocad

Agora, vamos discutir como obter deslocamentos de qualquer objeto. Vamos precisar do método Offset para usar contra o objeto para o qual queremos esse deslocamento.

Aqui, tomaremos o deslocamento para a elipse existente, ou seja, “el1”.

el2 = el1.Offset(10)
Figura 4: Offset da elipse el1

Dimensionar objetos do AutoCAD em Python

Para dimensionar um objeto para cima ou para baixo, precisaremos do método “Offset” a ser usado contra o objeto que queremos dimensionar.

Vamos reduzir o círculo existente “c2”.

c3 = c2.ScaleEntity(APoint(300, 300), 0.5)
Figura 5.1: Círculo reduzido c2

Caso tenhamos muitos objetos para tratar, podemos destacar o objeto específico usando o método “Highlight” e passar o parâmetro como “True”.

l2.Highlight(True)  
Figura 5.2: Linha destacada l2

Leave a Reply

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Close

Meta