Comunidade
AutoCAD - Português
Bem vindo ao Forum de AutoCAD da Autodesk. Compartilhe seu conhecimento, faça perguntas e explore os tópicos mais populares de AutoCAD.
cancelar
Mostrando resultados para 
Mostrar  apenas  | Pesquisar então 
Você quer dizer: 

duvida Autolisp

4 RESPOSTAS 4
SOLUCIONADO
Responder
Mensagem 1 de 5
lamvieira
183 Exibições, 4 Respostas

duvida Autolisp

Amigos , por favor estou com uma duvida:-

Queira passar esta formula do excel para o autolisp.

(1000+(cos (15 )x 250) x tan de  11,25) 

Tentei esta mas deu erro

;P1 (polar IP (Grp 90.0)(* (+1000  (cos 15 (/ DT 2) )TA))onde :-

IP = 0,0,0

DT =500 

TA = tangente de  11,25  graus ou 0,19635 radianos

a resposta  tem de ser:=  246,95 mm

Antecipo aradeçimentos

lamvieira@yahoo.com.br

whatsapp:- 55 31 99996 3271

 

 

 

 

Olá @lamvieira 
O titulo do post foi editado para facilitar o encontro do tema por outros usuários (por @clacampos)
Original: [duvida ]

 

 

 

4 RESPOSTAS 4
Mensagem 2 de 5
hmsilva
em resposta a: lamvieira

@lamvieira para escrevermos essa equação em autolisp, necessitamos de funções auxiliares.

Temos que transformar os angulos de graus para radianos

;; converts degrees to radians
(defun DtR (d) (* pi (/ d 180.0)))

e a função tangente não existe em autolisp

;; Tangent  -  Lee Mac
;; Args: x - real
(defun tan ( x )
    (if (not (equal 0.0 (cos x) 1e-10))
        (/ (sin x) (cos x))
    )
)

Com a ajuda destas funções poderemos escrever assim:

(* (+ 1000 (*(cos (dtr 15)) 250)) (tan (dtr 11.25)))

e o resultado será = 246.946

 

Espero que ajude
Henrique

 

EESignature

Mensagem 3 de 5
lamvieira
em resposta a: hmsilva

Amigo.Bom dia

Sua resposta me deu a solução. Te Agradeço Muito.

Ja comecei a escrever o programa:-

 

 

(alert "\n PROGRAMA CARREGADO COM SUCESSO.
        \n DIGITE PONTOS PARA EXECUTAR...")
;; converts degrees to radians
(defun Gpr (d) (* pi (/ d 180.0)))
(defun tan(x)
    (if (not (equal 0.0 (cos x) 1e-10))
        (/ (sin x) (cos x))))
(Defun C:Pontos()
(setvar "blipmode" 0)
(setvar "cmdecho" 0)
(setvar "osmode" 0)
(setq RC (getreal "\nQual o Raio Da Curva (RC):- "))
(setq DT (getreal "\nQual o Diametro da Tubulação (DT):- "))
(setq NS (getreal "\nQual o Numero De Gomos:- "))
        (setq AG (getreal "\nQual o Angulo Da Curva (AG):- "))
(setq EP (getreal "\nQual a Espessura Da Chapa (EP):- "))
(setq ND (getreal "\nQual o Número De Divisões (ND):- "))
(setq DC (*(- DT EP) PI)
      RT (/ DT 2)
              DTE(+ RC (/ DT 2))
              DTI (- RC (/ DT 2))
      DD (/ DC ND)
      AN (/ AG (* (1- NS) 2));Angulo em Graus
      TA (/ (sin (Gpr AN)) (cos  (Gpr AN))) ;Tangente  em Radianos
)
  (command "_layer" "t" "Contorno" "m" "Contorno" "c" "111" "Contorno" "l" 
         "Continuous" "Contorno" "lw" "0.4" "Contorno" "")  
  (setq IP (getpoint "\nPonto De Inserção do Desenho:- "))
(Setq P1 (polar IP(Gpr 0.0) DC)    
      P2 (polar IP(Gpr 90.0)(* DTE TA))
      P3 (polar IP(Gpr 90.0)(* RC TA))
      P4 (polar P1(Gpr 90.0)(* DTI TA)) 
      P5 (polar IP(Gpr 0.0) DD) 
      P6 (polar P4(Gpr 90.0)(*(+ RC(* (cos(Gpr 15)) RT))TA))
      P7 (polar P4(Gpr 90.0)(*(+ RC(* (cos(Gpr 30)) RT))TA))
      P8 (polar P4(Gpr 90.0)(*(+ RC(* (cos(Gpr 45)) RT))TA))
      P7 (polar P4(Gpr 90.0)(*(+ RC(* (cos(Gpr 60)) RT))TA))
)
(command "_line" P2 P1 IP P3"")
)
Mensagem 4 de 5
hmsilva
em resposta a: lamvieira

@lamvieira fico feliz por ter podido ajudar!


Henrique

EESignature

Mensagem 5 de 5
clacampos
em resposta a: lamvieira

Olá @lamvieira 

Obrigada pelo retorno com a solução é muito importante porque poderá ajudar outros usuários com a mesma duvida.
😉

 

 

 

Você achou uma postagem útil? Então fique à vontade para curtir essas postagens!
Sua pergunta obteve uma resposta que resolveu a duvida? Então clique no botão 'Aceitar Solução ' .


Claudia Campos
Comunidade de Usuários Autodesk Português - Coordenadora

Não encontrou o que está procurando? Pergunte à comunidade ou compartilhe seu conhecimento.

Postar nos fóruns  

Autodesk Design & Make Report