Hi, I'm facing a problem that I can't solve alone with my low programming skills.
I want to create cogo points referenced to a alignment and a profile just like the command "CreatePointStationOffset", but I want that the description came from a dialog box that I made.
The problem is that the only way I know to create cogo points is by the existing command "CreatePointStationOffset", by creating this way, I have problems with the variables getting wrong values.
The optimal would be a drop-down list with all alignment names and profiles, when I click OK, would be asking the station only. But for
Code:
(defun c:spv ()
(setq dcl_id (load_dialog "S:/Projetos/ExemploBim/Referencias/Caixas.dcl"))
(if (not (new_dialog "maindiag" dcl_id)) (exit))
(set_tile "var_ladoplaca" "radio_esq")
(action_tile "radio_esq" "(setq offset -10)")
(action_tile "radio_dir" "(setq offset 10)")
(setq lista_placa (list "R-19-4" "R-19-6" "A-2b" "A-5b" "R-1"))
(start_list "esc_placa")
(mapcar 'add_list lista_placa)
(end_list)
(action_tile "esc_placa" "(setq escolha $value)")
(setq nomeplaca (nth (fix (distof escolha)) lista_placa))
(setq maindiag (start_dialog))
(unload_dialog dcl_id)
(if (= maindiag 1) (pontoalign))
)
(defun pontoalign ()
(command "CreatePointStationOffset" pause pause offset nomeplaca)
)
Code:
maindiag:dialog {
label = "Criação de Placas de Sinalização Vertical";
:text {
label = "Caixa para criar placas.";
}
:row {
:boxed_radio_column {
label = "Lado da placa";
fixed_width = true;
width = 15;
height = 6;
key = "var_ladoplaca";
:radio_button {
label = "Esquerdo";
key = "radio_esq";
}
:radio_button {
label = "Direito";
key = "radio_dir";
}
spacer;
spacer;
spacer;
}
:boxed_column {
label = "Escolha a placa";
fixed_width = true;
width = 45;
:list_box {
width = 10;
height = 8;
key = "esc_placa";
}
}
}
ok_cancel;
}