Olá gente, hoje vou postar uma pequena dica para aqueles que precisam de algo mais dos COGO POINT.
Imagine o seguinte:
Você é um topógrafo e cadastrou a posição da tampa de um bueiro qualquer e seu auxiliar mediu a profundidade deste com o bastão do prisma, ou mesmo uma trena. Em fim.
Seu cliente precisa dessa informação no desenho e o que você faz? Escreve um texto do lado do ponto?
Pouco prático isso. Mas e se o ponto tivesse um campo pra preencher, como o elevation ou o description?
Vamos fazer o ponto ter isso então!!
Abra o Toolspace / Settings / Points / User Defined Property Clasification.
Clique o botão direito neste item e peça a opção NEW. Dê um nome:
Clique OK, depois no Item criado clique o botão direito novamente e peça a opção NEW. Dê um nome para a propriedade e defina o tipo de dados a ser armazenado neste campo:
Note que para Profundidade, que é a propriedade que queremos, o tipo de dado deve ser distância. Seria interessante atribuir valores de máximo e mínimo, para evitar de colocar valores inválidos.
De qualquer forma, a escolha é sua.
Feito isso, crie um ponto para testar, selecione-o e abra o Porperties:
Olha que interessante!!
Aparece no Properties e o ToolTip Informa como definimos a propriedade.
Agora, crie um Label Style que mostre esta nova propriedade:
Agora, so de farra, que tal colocar uma Expression que calcula a cota de Fundo do PV?
É bem simples, vá até Toolspace / Settings / Points / Label Styles / Expressions
Clique o botão direito e escolha NEW.
Escreva uma expressão assim {Point Elevation}-Profundidade:
Clique os OK ue precisar, agora edite o Label Style do ponto para incluir a cota de fundo.
Por fim veja como fica no properties:
É bem interessante, não?
Agora, alem do Point Elevation, temos a cota de fundo e a profundidade do PV. Isso tudo sem escrever textos no desenho. Interessante que estas propriedades também podem ser vistas no Toolspace:
Mas, será precsamos digitar na mão os pontos?
Que tal importar eles dum arquivo de texto já com as profundidades, como faríamos com pontos comuns?
Navegue até Toolspace / Settings / Points /Point File Formats
Clique NEW e preencha como na figura:
Depois é só testar:
O resultado pode ser visto no toolspace:
Bacana né?
É isso.
Mostrando postagens com marcador Points. Mostrar todas as postagens
Mostrando postagens com marcador Points. Mostrar todas as postagens
Civil 3D - Point Group para todas as descrições
Volta e meia você precisa criar point group para as descrições dos pontos, certo? Seja porque você não gosta do "Description Key Sets", seja porque você nem saiba o que é isso, hehehe
A idéia basicamente é que cada point group contenha somente os pontos de uma determinada descrição, o que facilita na hora de criar estilos e na hora de fazer as superfícies.
Por exemplo, se criamos um point group chamado árvore, podemos definir o estilo deste com um bloquinho que seja uma árvore. O mesmo com postes por exemplo, já imaginou que bacana? Isso simplifica bastante o acabamento do desenho...
Também facilita no mdt, porque nossa superfície pode não precisar de alguns pontos, por exemplo, os de fundo de boca de lobo...
O duro é criar todos esses point groups....
Que tal um lispezinho pra isso? Veja:
;funcao que devolve um item da colecao, cria se necessario
;byref_is_new é passado por referencia, diz se é novo
(defun get_or_create (collection name byref_is_new / obj)
(VLAX-FOR O COLLECTION
(IF (= (VLA-GET-NAME O) NAME)
(sETQ OBJ O)
))
(IF OBJ (set byref_is_new nil)
(progn (setq obj (vla-add collection name))
(set byref_is_new t)
))
obj
)
;funcao principal
;escaneia os pontos do desenho e cria point groups com estilos
;para cada descricao de pontodiferente
;autor: neyton luiz dalle molle
;http://tbn2.blogspot.com
;requer inivars.lsp
(defun c:pgforall (/ p desc QueryBuilder pointstyle pointgroup novo)
;inicializa o controle de erros
(tbn:error-init nil)
;em todos os pontos do desenho faça
(vlax-for p (cvlp-get-points aec-adoc)
(setq desc (cvlp-get-rawdescription p))
;se adescricao esta setada, faça
(if (/= desc "")
(progn
;verifica se existe o pointgroup com este nome
(setq pointgroup
(GET_OR_CREATE
(cvlp-get-pointgroups aec-adoc)
desc
'novo))
;se for criado um novo, entao
(if novo
(progn
;constroi o filtro e o estilo
(setq QueryBuilder (cvlp-get-QueryBuilder pointgroup)
pointstyle (GET_OR_CREATE
(cvlp-get-pointstyles aec-adoc)
desc
'novo ))
;define as propriedades do novo pointgroup
(cvlp-put-IncludeRawDescriptions QueryBuilder desc)
(cvlp-put-pointstyle pointgroup pointstyle)
(cvlp-put-MarkerSize pointstyle 0.0003)
(prompt (strcat "\n" desc))
)
)
)
)
)
;finaliza ocontrole de erros
(tbn:error-restore)
)
Link(s) da(s) subrotina(s) usada(s):
tbn:error-init
tbn:error-restore
funções cvl*
Para rodar, primeiro copie o código fonte acima, bem como aqueles indicados nos links das subrotinas, colando tudo num mesmo arquivo de texto. Use o bloco de notas do windows....
Salve com a extensão .LSP.
Agora carregue no Civil 3D, para isso use o comando APPLOAD. Selecione a lisp que você salvou.
Agora é só chamar na linha de comando: PGFORALL
Note que alem do point group, o programa já cria um estilo correspondente.
Se você não quer o estilo, basta remover essa parte do código... Fica como exercício pra você descobrir como!!!
A idéia basicamente é que cada point group contenha somente os pontos de uma determinada descrição, o que facilita na hora de criar estilos e na hora de fazer as superfícies.
Por exemplo, se criamos um point group chamado árvore, podemos definir o estilo deste com um bloquinho que seja uma árvore. O mesmo com postes por exemplo, já imaginou que bacana? Isso simplifica bastante o acabamento do desenho...
Também facilita no mdt, porque nossa superfície pode não precisar de alguns pontos, por exemplo, os de fundo de boca de lobo...
O duro é criar todos esses point groups....
Que tal um lispezinho pra isso? Veja:
;funcao que devolve um item da colecao, cria se necessario
;byref_is_new é passado por referencia, diz se é novo
(defun get_or_create (collection name byref_is_new / obj)
(VLAX-FOR O COLLECTION
(IF (= (VLA-GET-NAME O) NAME)
(sETQ OBJ O)
))
(IF OBJ (set byref_is_new nil)
(progn (setq obj (vla-add collection name))
(set byref_is_new t)
))
obj
)
;funcao principal
;escaneia os pontos do desenho e cria point groups com estilos
;para cada descricao de pontodiferente
;autor: neyton luiz dalle molle
;http://tbn2.blogspot.com
;requer inivars.lsp
(defun c:pgforall (/ p desc QueryBuilder pointstyle pointgroup novo)
;inicializa o controle de erros
(tbn:error-init nil)
;em todos os pontos do desenho faça
(vlax-for p (cvlp-get-points aec-adoc)
(setq desc (cvlp-get-rawdescription p))
;se adescricao esta setada, faça
(if (/= desc "")
(progn
;verifica se existe o pointgroup com este nome
(setq pointgroup
(GET_OR_CREATE
(cvlp-get-pointgroups aec-adoc)
desc
'novo))
;se for criado um novo, entao
(if novo
(progn
;constroi o filtro e o estilo
(setq QueryBuilder (cvlp-get-QueryBuilder pointgroup)
pointstyle (GET_OR_CREATE
(cvlp-get-pointstyles aec-adoc)
desc
'novo ))
;define as propriedades do novo pointgroup
(cvlp-put-IncludeRawDescriptions QueryBuilder desc)
(cvlp-put-pointstyle pointgroup pointstyle)
(cvlp-put-MarkerSize pointstyle 0.0003)
(prompt (strcat "\n" desc))
)
)
)
)
)
;finaliza ocontrole de erros
(tbn:error-restore)
)
Link(s) da(s) subrotina(s) usada(s):
tbn:error-init
tbn:error-restore
funções cvl*
Para rodar, primeiro copie o código fonte acima, bem como aqueles indicados nos links das subrotinas, colando tudo num mesmo arquivo de texto. Use o bloco de notas do windows....
Salve com a extensão .LSP.
Agora carregue no Civil 3D, para isso use o comando APPLOAD. Selecione a lisp que você salvou.
Agora é só chamar na linha de comando: PGFORALL
Note que alem do point group, o programa já cria um estilo correspondente.
Se você não quer o estilo, basta remover essa parte do código... Fica como exercício pra você descobrir como!!!
Civil 3D - Tutoriais - 3.01 - Point Styles
Esses dias me pediram como fazer as "cruzetas" da UTM no civil 3d... Bem, podemos usar os COGO POINT para fazer isso, porque não?
Basta criar um estilo que represente a cruz como queremos, inserir um ponto no desenho, sem Z mesmo e fazer um ARRAY dele...
Por exemplo, crie um POINT STYLE que tenha a cruz, clique em:
Toolspace/Settings/Points/Point Styles
botão direito do mouse sobre item "Point Styles":
Se abre esta tela:
Clique a cruz somente, veja o preview... se ficar como nesta imagem, pode clicar a aba Information e dar o nomede CRUZ e depois pode clicar OK.
Agora, clique para criar um "Point Label Style" (um pouco abaixo de onde você clicou para criar o estilo do ponto):
Na aba Layout, você verá que são criados 3 componentes de texto:
Não vamos usar nenhum deles, então pode clicar o botão com um "X" vermelho para apagar os três
Em seguida, clique o botão com Um "A" (se parar o mouse em cima dele, aparece "Create Text Component"
Nele coloque estas propriedades::
O mais importante é o "Contents" (para editar ele, clique a linha dele e nela aparecerá um botão com três pontinhos, clique-o). Se você leu o tutorial 1.01 talvez esteja trabalhando com coordenadas locais e em vem do contents ser
N=<[Northing(Um|P0|RN|AP|GC|UN|Sn|OF)]>
será
N=<[Grid Northing(Um|P0|RN|AP|GC|UN|Sn|OF)]>
Note que há uma diferença sutil em qual propriedade queremos...
Se não leu o tutorial que eu falei, deixe a primeira opção
Depois, clique o botão "Create Text Component" outra vez (Aquele do "A"...)
nele coloque as seguintes propriedades:
note que trocou o Contents, O Offset (x, y), "os anchor point" e arotação
Simples, não?
Ah, ao editar o Contents, você notará que para sair o texto
E=<[Easting(Um|P0|RN|AP|GC|UN|Sn|OF)]>
a tela precisa estar assim:
Vou deixar você descobrir porque destaquei com uma seta azul o botão...
Por fim, clique todos os OK que precisar....
vá até o Prospector....
(continua)
Basta criar um estilo que represente a cruz como queremos, inserir um ponto no desenho, sem Z mesmo e fazer um ARRAY dele...
Por exemplo, crie um POINT STYLE que tenha a cruz, clique em:
Toolspace/Settings/Points/Point Styles
botão direito do mouse sobre item "Point Styles":
Se abre esta tela:
Clique a cruz somente, veja o preview... se ficar como nesta imagem, pode clicar a aba Information e dar o nomede CRUZ e depois pode clicar OK.
Agora, clique para criar um "Point Label Style" (um pouco abaixo de onde você clicou para criar o estilo do ponto):
Na aba Layout, você verá que são criados 3 componentes de texto:
Não vamos usar nenhum deles, então pode clicar o botão com um "X" vermelho para apagar os três
Em seguida, clique o botão com Um "A" (se parar o mouse em cima dele, aparece "Create Text Component"
Nele coloque estas propriedades::
General Name Norte Visibility True Anchor ComponentAnchor Point Middle Left Text Contents N=<[Northing(Um|P0|RN|AP|GC|UN|Sn|OF)]> Text Height 2.00mm Rotation Angle 000.0000 (d) Attachment Middle left X Offset 5.00mm Y Offset 0.00mm Color BYLAYER Lineweight ByLayer Border Visibility False Type Rectangular Background Mask False Gap 0.75mm Color BYLAYER Linetype ByBlock Lineweight ByLayer
O mais importante é o "Contents" (para editar ele, clique a linha dele e nela aparecerá um botão com três pontinhos, clique-o). Se você leu o tutorial 1.01 talvez esteja trabalhando com coordenadas locais e em vem do contents ser
N=<[Northing(Um|P0|RN|AP|GC|UN|Sn|OF)]>
será
N=<[Grid Northing(Um|P0|RN|AP|GC|UN|Sn|OF)]>
Note que há uma diferença sutil em qual propriedade queremos...
Se não leu o tutorial que eu falei, deixe a primeira opção
Depois, clique o botão "Create Text Component" outra vez (Aquele do "A"...)
nele coloque as seguintes propriedades:
General Name Leste Visibility True Anchor ComponentAnchor Point Top Center Text Contents E=<[Easting(Um|P0|RN|AP|GC|UN|Sn|OF)]> Text Height 2.00mm Rotation Angle 090.0000 (d) Attachment Middle center X Offset 0.00mm Y Offset 5.00mm Color BYLAYER Lineweight ByLayer Border Visibility False Type Rectangular Background Mask False Gap 0.75mm Color BYLAYER Linetype ByBlock Lineweight ByLayer
note que trocou o Contents, O Offset (x, y), "os anchor point" e arotação
Simples, não?
Ah, ao editar o Contents, você notará que para sair o texto
E=<[Easting(Um|P0|RN|AP|GC|UN|Sn|OF)]>
a tela precisa estar assim:
Vou deixar você descobrir porque destaquei com uma seta azul o botão...
Por fim, clique todos os OK que precisar....
vá até o Prospector....
(continua)
Point Groups e Estilos
Sabe aquelas horas na pressa que você precisa colocar todos os pontos em seus devidos point groups, para entao cria os devidos point styles e descobre que tem um milhão de descrições diferentes pra fazer?
É, eu passei por isso agora.... peguei um desenho com montes de descriacções, que não batem com as minhas, claro, e tive de fazer isso...
no segundo eu já desisti e escrevi um programinha pra fazer, esta ai:
pra usar é o de sempre, baixar as lisps extras, colocar tudo num arquivo só e carregar com o APPLOAD
ao usar o comando, ele simplesmente escaneia as descrições dos pontos do civil 3d e vai criando estilos e grupos para cada descrição diferente. no final cada point group tera um estilo e seus pontos filtrados!!!
É, eu passei por isso agora.... peguei um desenho com montes de descriacções, que não batem com as minhas, claro, e tive de fazer isso...
no segundo eu já desisti e escrevi um programinha pra fazer, esta ai:
mais...
;funcao que devolve um item da colecao, cria se necessario
;byref_is_new é passado por referencia, diz se é novo
(defun get_or_create (collection name byref_is_new / obj)
(if (vl-catch-all-error-p
(setq obj (vl-catch-all-apply 'vla-item (list collection name)))
)
(progn (setq obj (vla-add collection name))
(set byref_is_new t)
)
(set byref_is_new nil)
)
obj
)
;funcao principal
;escaneia os pontos do desenho e cria point groups com estilos
;para cada descricao de pontodiferente
;autor: neyton luiz dalle molle
;http://tbn2.blogspot.com
;requer inivars.lsp
(defun c:pgforall (/ p desc QueryBuilder pointstyle pointgroup novo)
;inicializa o controle de erros
(tbn:error-init nil)
;em todos os pontos do desenho faça
(vlax-for p (cvlp-get-points aec-adoc)
(setq desc (cvlp-get-rawdescription p))
;se adescricao esta setada, faça
(if (/= desc "")
(progn
;verifica se existe o pointgroup com este nome
(setq pointgroup
(GET_OR_CREATE
(cvlp-get-pointgroups aec-adoc)
desc
'novo))
;se for criado um novo, entao
(if novo
(progn
;constroi o filtro e o estilo
(setq QueryBuilder (cvlp-get-QueryBuilder pointgroup)
pointstyle (GET_OR_CREATE
(cvlp-get-pointstyles aec-adoc)
desc
'novo ))
;define as propriedades do novo pointgroup
(cvlp-put-IncludeRawDescriptions QueryBuilder desc)
(cvlp-put-pointstyle pointgroup pointstyle)
(cvlp-put-MarkerSize pointstyle 0.0003)
(prompt (strcat "\n" desc))
)
)
)
)
)
;finaliza ocontrole de erros
(tbn:error-restore)
)
Link(s) da(s) subrotina(s) usada(s):
get_or_create, tbn:error-init, aec-adoc, GET_OR_CREATE, tbn:error-restore
;byref_is_new é passado por referencia, diz se é novo
(defun get_or_create (collection name byref_is_new / obj)
(if (vl-catch-all-error-p
(setq obj (vl-catch-all-apply 'vla-item (list collection name)))
)
(progn (setq obj (vla-add collection name))
(set byref_is_new t)
)
(set byref_is_new nil)
)
obj
)
;funcao principal
;escaneia os pontos do desenho e cria point groups com estilos
;para cada descricao de pontodiferente
;autor: neyton luiz dalle molle
;http://tbn2.blogspot.com
;requer inivars.lsp
(defun c:pgforall (/ p desc QueryBuilder pointstyle pointgroup novo)
;inicializa o controle de erros
(tbn:error-init nil)
;em todos os pontos do desenho faça
(vlax-for p (cvlp-get-points aec-adoc)
(setq desc (cvlp-get-rawdescription p))
;se adescricao esta setada, faça
(if (/= desc "")
(progn
;verifica se existe o pointgroup com este nome
(setq pointgroup
(GET_OR_CREATE
(cvlp-get-pointgroups aec-adoc)
desc
'novo))
;se for criado um novo, entao
(if novo
(progn
;constroi o filtro e o estilo
(setq QueryBuilder (cvlp-get-QueryBuilder pointgroup)
pointstyle (GET_OR_CREATE
(cvlp-get-pointstyles aec-adoc)
desc
'novo ))
;define as propriedades do novo pointgroup
(cvlp-put-IncludeRawDescriptions QueryBuilder desc)
(cvlp-put-pointstyle pointgroup pointstyle)
(cvlp-put-MarkerSize pointstyle 0.0003)
(prompt (strcat "\n" desc))
)
)
)
)
)
;finaliza ocontrole de erros
(tbn:error-restore)
)
Link(s) da(s) subrotina(s) usada(s):
get_or_create, tbn:error-init, aec-adoc, GET_OR_CREATE, tbn:error-restore
pra usar é o de sempre, baixar as lisps extras, colocar tudo num arquivo só e carregar com o APPLOAD
ao usar o comando, ele simplesmente escaneia as descrições dos pontos do civil 3d e vai criando estilos e grupos para cada descrição diferente. no final cada point group tera um estilo e seus pontos filtrados!!!
Como tabelar pontos
Esses tempos atráz, me pediram um programa que criasse uma tabela com as coordenadas dos pontos de um desenho... Bem aí está:
Para usar é simples, carrega a lisp, desenha alguns pontos ( comando POINT ) e chama a lisp na linha de comando: TABELAR
Será pedido um ponto de inserção e será criada uma TABLE do autocad com as coordenadas X e Y desses pontos.
Bem bobinho este programa, eu sei, mas servirá de exemplo para quem quer saber como usar FIELD e desenhar TABLE com lisp.
ver isso!!!
(vl-load-com)
(defun c:tabelar (/ ss NumRows InsertionPoint NumColumns RowHeight ColWidth
model table nRow id ent vla)
(setq ss (ssget ":S" '((0 . "POINT")))
NumRows (sslength ss)
InsertionPoint (vlax-3d-point
(getpoint "\nEntre com um ponto"))
NumColumns 3 ;nome, x, y -> 3
RowHeight 2
ColWidth 10
model (vla-get-modelspace
(vla-get-activedocument (vlax-get-acad-object)))
table (vla-addtable model InsertionPoint
(1+ NumRows) ;uma linha pro titulo...
;ou vai depender do estilo da tabela
NumColumns RowHeight ColWidth)
nRow 0)
(repeat NumRows
(setq ent (ssname ss nRow)
vla (vlax-ename->vla-object ent)
id (vla-get-ObjectID vla)
nRow (1+ nRow))
;escreve o nº do ponto na coluna 1
(vla-Settextstring
table ;a tabela em si
nRow ;linha
0 ;coluna
(* nRow 3) ;"id" da celula
(itoa nRow) ;conteudo da celula
)
;escreve o X na coluna 2:
(vla-Setformula
table ;a tabela em si
nRow ;linha
1 ;coluna
(+ 1 (* nRow 3)) ;"id" da celula
(strcat ;cria uma "field" q mostra o X
"%<\\AcObjProp Object(%<\\_ObjId "
(itoa id)
">%).Coordinates \\f \"%pt1\">%"))
;escreve o Y na coluna 3:
(vla-Setformula table nRow 2 (+ 2 (* nRow 3))
(strcat ;cria uma "field" q mostra o Y
"%<\\AcObjProp Object(%<\\_ObjId "
(itoa id)
">%).Coordinates \\f \"%pt2\">%")))
;atualiza a tabela:
(vla-GenerateLayout table))
(vl-load-com)
(defun c:tabelar (/ ss NumRows InsertionPoint NumColumns RowHeight ColWidth
model table nRow id ent vla)
(setq ss (ssget ":S" '((0 . "POINT")))
NumRows (sslength ss)
InsertionPoint (vlax-3d-point
(getpoint "\nEntre com um ponto"))
NumColumns 3 ;nome, x, y -> 3
RowHeight 2
ColWidth 10
model (vla-get-modelspace
(vla-get-activedocument (vlax-get-acad-object)))
table (vla-addtable model InsertionPoint
(1+ NumRows) ;uma linha pro titulo...
;ou vai depender do estilo da tabela
NumColumns RowHeight ColWidth)
nRow 0)
(repeat NumRows
(setq ent (ssname ss nRow)
vla (vlax-ename->vla-object ent)
id (vla-get-ObjectID vla)
nRow (1+ nRow))
;escreve o nº do ponto na coluna 1
(vla-Settextstring
table ;a tabela em si
nRow ;linha
0 ;coluna
(* nRow 3) ;"id" da celula
(itoa nRow) ;conteudo da celula
)
;escreve o X na coluna 2:
(vla-Setformula
table ;a tabela em si
nRow ;linha
1 ;coluna
(+ 1 (* nRow 3)) ;"id" da celula
(strcat ;cria uma "field" q mostra o X
"%<\\AcObjProp Object(%<\\_ObjId "
(itoa id)
">%).Coordinates \\f \"%pt1\">%"))
;escreve o Y na coluna 3:
(vla-Setformula table nRow 2 (+ 2 (* nRow 3))
(strcat ;cria uma "field" q mostra o Y
"%<\\AcObjProp Object(%<\\_ObjId "
(itoa id)
">%).Coordinates \\f \"%pt2\">%")))
;atualiza a tabela:
(vla-GenerateLayout table))
Para usar é simples, carrega a lisp, desenha alguns pontos ( comando POINT ) e chama a lisp na linha de comando: TABELAR
Será pedido um ponto de inserção e será criada uma TABLE do autocad com as coordenadas X e Y desses pontos.
Bem bobinho este programa, eu sei, mas servirá de exemplo para quem quer saber como usar FIELD e desenhar TABLE com lisp.
Pt2pt - Conversão de pontos

Então você ainda usa o posicao ou o topograph? Entendo... e você recebe desenhos com pontos vindos do civil 3d, ou vice-versa?
Meus parabéns!!!
Seus problemas acabaram!!! baixe este programinha: PT2PT
Com ele é possível converter pontos entre o civil 3d (2007, 2008, 2009), posicao ou topograph!! Claro que para converter de ou para Civil 3d, você precisa ter o civil 3d, hehehe
13/10/2008:
Correção de bug com o nome de alguns atributos em que o prompt se confunde com a tag do mesmo, coisa estranha isso viu...
28/10/2008:
Melhorado fluxo de conversão dos pontos, antes todos eram reconhecidos, depois eram convertidos, para arquivos com muitos pontos isso causava erro fatal por estouro de memória, hehehehe tenho as manhas pra travar essa bagaça, huahauhauahau
Meus parabéns!!!
Seus problemas acabaram!!! baixe este programinha: PT2PT
Com ele é possível converter pontos entre o civil 3d (2007, 2008, 2009), posicao ou topograph!! Claro que para converter de ou para Civil 3d, você precisa ter o civil 3d, hehehe
13/10/2008:
Correção de bug com o nome de alguns atributos em que o prompt se confunde com a tag do mesmo, coisa estranha isso viu...
28/10/2008:
Melhorado fluxo de conversão dos pontos, antes todos eram reconhecidos, depois eram convertidos, para arquivos com muitos pontos isso causava erro fatal por estouro de memória, hehehehe tenho as manhas pra travar essa bagaça, huahauhauahau
Civil 3d - Tutoriais - Parte 3 - Pontos
Muito bem, já criou os pontos pelo Survey? não? tudo bem, há que use suas próprias soluções para processar o levantamento topográfico e isso não pode se tornar um problema... então vamos pular para o seguinte problema: você já tem os pontos, em geral no
Excel, arquivo de texto o algo parecido... Vamos dizer que você tem um arquivo de texto com os pontos da seguinte maneira:
p d xxxxx.xxxx yyyyyy.yyyy zzzzzzz.zzzzz
ou seja, número do ponto, descrição, coordenadas X, Y e Z
Dá para "puxar" esses pontos pro civil 3d de maneira bem simples, usando a seguinte ferramenta: IMPORTPOINTS

Nela, você verá uma tela, onde você pode escolher a origem do seu arquivo e o formato:

Escolha um formato, por exemplo PNEZD (space delimited). Mas digamos que o seu arquivo é diferente, não esta na lista. Você pode criar um formato personalizado, com as colunas que
preferir!!, ara isso clique naquele botãozinho a direita da lista de formatos, aparecerá uma lista de formatos existentes, em seguida, clique o botão "New", ta tela que aparece, escolha "User Point File" e clique "OK", você verá esta tela:

Veja, há campos para você especificar o nome do seu formato, um comentário e na parte de baixo, você tem várias colunas escritas "".
Experimente clicar na primeira por exemplo. Deverá aparecer outra tela, onde você pode
escolher que tipo de dados entra nesta coluna, seja ela Elevação, coordenada Norte, ou descrição, por exemplo. Escolha algumas colunas, marque, ou informe qual o separador usado no seu arquivo...
Veja:

Separador? O que é isso???
Como eu disse, seus pontos podem estar da forma:
X.X Y.Y Z.Z P D
o separador é o espaço
ou:
X.X , Y.Y , Z.Z , P , D
ó separador é vírgula
Aqui cabe uma observação, use sempre o PONTO como separador de decimais e as coordenadas deixe-as sem separador de milhar, senão não será possível reconhecer o seu texto, veja, simulei um arquivo qualquer, separado por vírgulas, ao clicar o botão "Load", vemos que ele preenche a caixa mais abaixo com o conteúdo do texto e após clicar "Parse" (separar), ele preenche a caixa do centro, colocando cada coluna em seu lugar, como o
Excel, ao abrir textos separados por tabulações.

Depois disso, clique "OK" e a sua "máscara" de entrada de pontos fará parte da lista. Ah, ela fará parte do desenho corrente apenas, se precisar dela de novo, terá de copiar ela para o outro arquivo. Sugiro que a medida que você for aperfeiçoando um desenho, e entenda por isso, definir estilos, layers, fontes,
etc., use ele como template para outros, pois fica muito subjetivo querer configurar tudo
já no primeiro, você sempre terá de voltar e editar algo....
Bom, clicando todos os "OK" necessários, você voltará para a tela do "Import Points" e o seu formato estará
lá na lista:

Aí é só clicar "OK" mais uma vez e pronto....
Veja que você pode associar estes pontos a um "POINT GROUP", mas pra quê?
Imagine que o seu levantamento é feito em etapas com datas diferentes... você pode ter várias etapas no mesmo desenho e assim, poderá diferenciar um ponto de outro...
Importados os pontos, teremos eles na tela:

Ah, aqui eu estou usando um template que vem no cd do civil 3d, chama-se "_AutoCAD Civil 3D (Metric) NCS LDT.dwt", após importar os pontos, eles podem, ou não, aparecer na tela. Se eles não aparecerem, é possível que o layer esteja desligado, congelado, ou o zoom está definido para uma região sem pontos. Ou.... pode ser que o ESTILO da LABEL dos pontos não esteja definida.

Os pontos estão no desenho.
No prospector, clique sobre "Point Groups" e expanda, veja, se você atribuiu os pontos a algum "Point Group" ele estará ali, caso contrário, apenas "_All Points" estará disponível.
Clique sobre ele (ou no "_All Points") com o botão direito do mouse e clique "properties", teremos a tela a seguir:

Temos várias abas, cada uma delas é importante, mas por enquanto ficamos com a aba "Information", nela configuramos o estilo que os pontos aparecem (ou não) desenhados na tela e como os textos irão (ou não) aparecer.
Convém você clicar no botão ao lado do "Point Style", veja que ele tem uma setinha apontando para baixo, isso significa que temos alguns comandos a mais no mesmo botão. No geral, temos as funções copiar, criar novo, escolher na tela ou editar o estilo selecionado. Primeiro vamos configurar os textos, para isso clique e escolha editar o "Point Label Style", temos:

Outra vez, muitas abas, dessas as mais importantes são a "General", que é onde você informará a fonte de texto, layer e
visibilidade, já na aba "Layout" você configura como os valores são apresentados e em que cores.

Nesta aba (layout), escolhi "Point Description" em na caixa "Component Name", e configurei como na figura, o campo "Genereal" que aparece ali, experimente alterar, veja que ele mostra no quadro de visualização as alterações feitas.... não tem muito que explicar, é melhor testar!!! No campo "Text" o mais importante é o "Contents", ao clicar nele aparece um botãozinho com "..." clique-o, aparece isto:

Tem uma lista de propriedades que você pode utilizar, desde o nome, até "Latitude/Longitude"!!! é bem bacana e dá pra ajustar "casas depois da vírgula" por exemplo...
Não se assuste com o "<[Full Description(CP)]>" que aparece lá, este texto diz ao civil 3d que ele deve mostrar a descrição do ponto, assim como "<[Northing(Um|P4|RN|AP|Sn|OF)]>" mostra a coordenada norte medido em metros, com 4 casas decimais, arredondamento normal, separador ponto, sinal de menos = "-", e saída completa!!!!
Sim, diz tudo isso, mas não se preocupe, você não precisa saber de cabeça isso tudo, basta escolher a propriedade e clicar na setinha, que ele irá para o quadro da direita com esses elementos todos. Ah, antes de clicar a dita cuja, veja que cada propriedade tem um conjuntos de configurações, arrume elas ANTES de clicar a setinha, senão, "<[Northing(Um|P4|RN|AP|Sn|OF)]>" poderá não ser exatamente o que você queria...
Como exemplo, veja como fica o texto das cotas (elevações):

Ou: <[Point Elevation(Um|P3|RN|Sn|OF|AP)]>
Dom, ainda temos a aba "Draged State", é onde configura como o texto aparece, caso arrastemos ele para longe da marquinha do ponto... no geral ele está configurado para colocar uma leader e aumentar o tamanho do texto... experimente alterar, não é complicado. Eu prefiro deixar o "As Composed" marcado, assim o texto não se altera se eu o arrastar.
Clique os "OK" até voltar para a tela do "Point Group Properties", aí clica "OK" outra vez, ok?
Vamos falar do point groups... ele pode servir para varias outras coisas, uma delas é:
você tem pontos que são árvores, pontos que são postes, outros que são cerca, em fim.... dá para você agrupar os pontos "árvore" e colocar eles num estilo, cuja marquinha do ponto é um bloco do autocad que é uma arvorezinha!!! o mesmo para postes, etc...
isso te livra de inserir blocos em cima dos pontos!! o topograph faz isso, com blocos atributados, é quase o mesmo esquema...
mas e para filtrar um grupo de pontos com o código de árvore?
No prospector, clique com o botão direito do mouse sobre o "Point Groups" e clique "New" no menu, na aba "Include", Marque a caixa "With Raw Description Matching" e na coloque o código correspondente:

E pronto, na aba "Information" defina o campo "Point Style" para o estilo do poste, caso este não exista, crie um!!! Clicando "New" (no botão ao lado do nome do estilo, as), você tem:

Veja que escolhi uma marquinha composta pelo "X"... faça alguns testes, tenha sua biblioteca de blocos a mão!!!
Bom, acho que já esta bom, já criamos pontos importando da estação, de arquivos de texto... so falta saber o que fazer com eles!!! ligar os pontos!!! você pode usar as ferramentas do menu "Lines/Curves" ou usar o line, circle etc...
Diria apenas o seguinte: tudo que for passível de se tornar linha obrigatória em superfícies (como crista/pé de talude, bordo de pista, margem de rio,
etc.) é bom desenhar com 3dpoly, usando as coordenadas Z dos pontos, e nada de "inventar" vértices nelas!!! use exclusivamente
os pontos do levantamento!!
Meio-fio é caso sério, levanta-se 3, ou até 2 pontos e jogam um arco "meia-boca" lá representando a esquina e quando vão fazer a triangulação, vêem que o civil triangula a corda do arco, mas não o arco... eu costumo interpolar alguns pontos nesses casos e desenho o trecho em curva por pequenos segmentos de reta... claro vai do gosto do camarada...
Mas... e se o estagiário conectou os pontos em 2d????? como usar as linhas como linhas obrigatórias da superfície???
bom, entra no meu blog!!! temos a solução dos seu problemas!!! huahuahauhua!!!
download pontos.txt
download dwg
Excel, arquivo de texto o algo parecido... Vamos dizer que você tem um arquivo de texto com os pontos da seguinte maneira:
p d xxxxx.xxxx yyyyyy.yyyy zzzzzzz.zzzzz
ou seja, número do ponto, descrição, coordenadas X, Y e Z
Dá para "puxar" esses pontos pro civil 3d de maneira bem simples, usando a seguinte ferramenta: IMPORTPOINTS

Nela, você verá uma tela, onde você pode escolher a origem do seu arquivo e o formato:

Escolha um formato, por exemplo PNEZD (space delimited). Mas digamos que o seu arquivo é diferente, não esta na lista. Você pode criar um formato personalizado, com as colunas que
preferir!!, ara isso clique naquele botãozinho a direita da lista de formatos, aparecerá uma lista de formatos existentes, em seguida, clique o botão "New", ta tela que aparece, escolha "User Point File" e clique "OK", você verá esta tela:

Veja, há campos para você especificar o nome do seu formato, um comentário e na parte de baixo, você tem várias colunas escritas "
Experimente clicar na primeira por exemplo. Deverá aparecer outra tela, onde você pode
escolher que tipo de dados entra nesta coluna, seja ela Elevação, coordenada Norte, ou descrição, por exemplo. Escolha algumas colunas, marque, ou informe qual o separador usado no seu arquivo...
Veja:

Separador? O que é isso???
Como eu disse, seus pontos podem estar da forma:
X.X Y.Y Z.Z P D
o separador é o espaço
ou:
X.X , Y.Y , Z.Z , P , D
ó separador é vírgula
Aqui cabe uma observação, use sempre o PONTO como separador de decimais e as coordenadas deixe-as sem separador de milhar, senão não será possível reconhecer o seu texto, veja, simulei um arquivo qualquer, separado por vírgulas, ao clicar o botão "Load", vemos que ele preenche a caixa mais abaixo com o conteúdo do texto e após clicar "Parse" (separar), ele preenche a caixa do centro, colocando cada coluna em seu lugar, como o
Excel, ao abrir textos separados por tabulações.

Depois disso, clique "OK" e a sua "máscara" de entrada de pontos fará parte da lista. Ah, ela fará parte do desenho corrente apenas, se precisar dela de novo, terá de copiar ela para o outro arquivo. Sugiro que a medida que você for aperfeiçoando um desenho, e entenda por isso, definir estilos, layers, fontes,
etc., use ele como template para outros, pois fica muito subjetivo querer configurar tudo
já no primeiro, você sempre terá de voltar e editar algo....
Bom, clicando todos os "OK" necessários, você voltará para a tela do "Import Points" e o seu formato estará
lá na lista:

Aí é só clicar "OK" mais uma vez e pronto....
Veja que você pode associar estes pontos a um "POINT GROUP", mas pra quê?
Imagine que o seu levantamento é feito em etapas com datas diferentes... você pode ter várias etapas no mesmo desenho e assim, poderá diferenciar um ponto de outro...
Importados os pontos, teremos eles na tela:

Ah, aqui eu estou usando um template que vem no cd do civil 3d, chama-se "_AutoCAD Civil 3D (Metric) NCS LDT.dwt", após importar os pontos, eles podem, ou não, aparecer na tela. Se eles não aparecerem, é possível que o layer esteja desligado, congelado, ou o zoom está definido para uma região sem pontos. Ou.... pode ser que o ESTILO da LABEL dos pontos não esteja definida.

Os pontos estão no desenho.
No prospector, clique sobre "Point Groups" e expanda, veja, se você atribuiu os pontos a algum "Point Group" ele estará ali, caso contrário, apenas "_All Points" estará disponível.
Clique sobre ele (ou no "_All Points") com o botão direito do mouse e clique "properties", teremos a tela a seguir:

Temos várias abas, cada uma delas é importante, mas por enquanto ficamos com a aba "Information", nela configuramos o estilo que os pontos aparecem (ou não) desenhados na tela e como os textos irão (ou não) aparecer.
Convém você clicar no botão ao lado do "Point Style", veja que ele tem uma setinha apontando para baixo, isso significa que temos alguns comandos a mais no mesmo botão. No geral, temos as funções copiar, criar novo, escolher na tela ou editar o estilo selecionado. Primeiro vamos configurar os textos, para isso clique e escolha editar o "Point Label Style", temos:

Outra vez, muitas abas, dessas as mais importantes são a "General", que é onde você informará a fonte de texto, layer e
visibilidade, já na aba "Layout" você configura como os valores são apresentados e em que cores.

Nesta aba (layout), escolhi "Point Description" em na caixa "Component Name", e configurei como na figura, o campo "Genereal" que aparece ali, experimente alterar, veja que ele mostra no quadro de visualização as alterações feitas.... não tem muito que explicar, é melhor testar!!! No campo "Text" o mais importante é o "Contents", ao clicar nele aparece um botãozinho com "..." clique-o, aparece isto:

Tem uma lista de propriedades que você pode utilizar, desde o nome, até "Latitude/Longitude"!!! é bem bacana e dá pra ajustar "casas depois da vírgula" por exemplo...
Não se assuste com o "<[Full Description(CP)]>" que aparece lá, este texto diz ao civil 3d que ele deve mostrar a descrição do ponto, assim como "<[Northing(Um|P4|RN|AP|Sn|OF)]>" mostra a coordenada norte medido em metros, com 4 casas decimais, arredondamento normal, separador ponto, sinal de menos = "-", e saída completa!!!!
Sim, diz tudo isso, mas não se preocupe, você não precisa saber de cabeça isso tudo, basta escolher a propriedade e clicar na setinha, que ele irá para o quadro da direita com esses elementos todos. Ah, antes de clicar a dita cuja, veja que cada propriedade tem um conjuntos de configurações, arrume elas ANTES de clicar a setinha, senão, "<[Northing(Um|P4|RN|AP|Sn|OF)]>" poderá não ser exatamente o que você queria...
Como exemplo, veja como fica o texto das cotas (elevações):

Ou: <[Point Elevation(Um|P3|RN|Sn|OF|AP)]>
Dom, ainda temos a aba "Draged State", é onde configura como o texto aparece, caso arrastemos ele para longe da marquinha do ponto... no geral ele está configurado para colocar uma leader e aumentar o tamanho do texto... experimente alterar, não é complicado. Eu prefiro deixar o "As Composed" marcado, assim o texto não se altera se eu o arrastar.
Clique os "OK" até voltar para a tela do "Point Group Properties", aí clica "OK" outra vez, ok?
Vamos falar do point groups... ele pode servir para varias outras coisas, uma delas é:
você tem pontos que são árvores, pontos que são postes, outros que são cerca, em fim.... dá para você agrupar os pontos "árvore" e colocar eles num estilo, cuja marquinha do ponto é um bloco do autocad que é uma arvorezinha!!! o mesmo para postes, etc...
isso te livra de inserir blocos em cima dos pontos!! o topograph faz isso, com blocos atributados, é quase o mesmo esquema...
mas e para filtrar um grupo de pontos com o código de árvore?
No prospector, clique com o botão direito do mouse sobre o "Point Groups" e clique "New" no menu, na aba "Include", Marque a caixa "With Raw Description Matching" e na coloque o código correspondente:

E pronto, na aba "Information" defina o campo "Point Style" para o estilo do poste, caso este não exista, crie um!!! Clicando "New" (no botão ao lado do nome do estilo, as), você tem:

Veja que escolhi uma marquinha composta pelo "X"... faça alguns testes, tenha sua biblioteca de blocos a mão!!!
Bom, acho que já esta bom, já criamos pontos importando da estação, de arquivos de texto... so falta saber o que fazer com eles!!! ligar os pontos!!! você pode usar as ferramentas do menu "Lines/Curves" ou usar o line, circle etc...
Diria apenas o seguinte: tudo que for passível de se tornar linha obrigatória em superfícies (como crista/pé de talude, bordo de pista, margem de rio,
etc.) é bom desenhar com 3dpoly, usando as coordenadas Z dos pontos, e nada de "inventar" vértices nelas!!! use exclusivamente
os pontos do levantamento!!
Meio-fio é caso sério, levanta-se 3, ou até 2 pontos e jogam um arco "meia-boca" lá representando a esquina e quando vão fazer a triangulação, vêem que o civil triangula a corda do arco, mas não o arco... eu costumo interpolar alguns pontos nesses casos e desenho o trecho em curva por pequenos segmentos de reta... claro vai do gosto do camarada...
Mas... e se o estagiário conectou os pontos em 2d????? como usar as linhas como linhas obrigatórias da superfície???
bom, entra no meu blog!!! temos a solução dos seu problemas!!! huahuahauhua!!!
download pontos.txt
download dwg
Assinar:
Comentários (Atom)














