ПЗ (1218806), страница 14

Файл №1218806 ПЗ (Автоматизация проектирования элементов железнодорожных станций) 14 страницаПЗ (1218806) страница 142020-10-05СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 14)

(setq v1(getpoint "Укажите место для нумерации. Чтобы завершить - нажмите ESC"

)

)

(setq v2 (polar v1 pi 5))

(setq v3 (polar v1 0 5))

(setq v4 (polar v1 pi 1.0))

(setq v5 (polar v4 (/ (* 3 pi) 2) 1.0))

(command "_break" v2 v3)

(command "_text" v5 getSizeSymbols (angtos 0) o "")

(setq o (+ o 1))

(if (> o getMaxNum)

(alert "Нумерация завершена")

)

)

)

)

); end defun

(defun getpar ()

(setq getNumbers (atoi (get_tile "how")))

)

(defun c:dialog_num_paths (/ dcl_id getNumbers)

(setq dcl_id

(load_dialog

"C:/Users/Игорь/Desktop/diplom/group/Dialogs/dialog_num_paths.dcl"

)

) ; загружаем диалог (файл DCL)

(if (null (new_dialog "num_p" dcl_id))

(exit)

) ; ; проверка существования диалога

(action_tile "accept" "(getpar) (done_dialog 1)")

(action_tile "cancel" "(done_dialog 0)") ;Если нажата кнопка "cancel"

(setq ddi (start_dialog))

(unload_dialog dcl_id) ; выгрузить Диалоговое окно

(if (= ddi 1)

(num_paths getNumbers)

)

(princ)

)

;---------------------------------------------------------------

;------------Нумерация путей (Римские цифры)--------------------

(defun numbersRoman (getNumRom /)

(setq

oo1 (getpoint

"\nУкажите место нумерации. Чтобы завершить - нажмите ESC"

)

)

(setq oo2 (polar oo1 pi 5))

(setq oo3 (polar oo1 0 5))

(setq oo4 (polar oo1 pi 1))

(setq oo5 (polar oo4 (/ (* 3 pi) 2) 1))

(command "_break" oo2 oo3)

(command "_text" oo5 getSizeSymbols (angtos 0) getNumRom "")

)

(defun getRom ()

(setq getNumRom (get_tile "rom_num"))

)

(defun c:dialog_num_paths_rome (/ dcl_id getNumRom)

(setq dcl_id

(load_dialog

"C:/Users/Игорь/Desktop/diplom/group/Dialogs/dialog_num_paths_roman.dcl"

)

); загружаем диалог (файл DCL)

(if (null (new_dialog "roman" dcl_id))

(exit)); проверка существования диалога

(action_tile "accept" "(getRom) (done_dialog 1)");Если нажата кнопка "аccept"

(action_tile "cancel" "(done_dialog 0)");Если нажата кнопка "cancel"

(setq ddi (start_dialog))

(unload_dialog dcl_id); выгрузить Диалоговое окно

(if (= ddi 1)

(numbersRoman getNumRom)

)

(princ)

)

;-----------------------конец файла main_file2.lsp----------



приложение б

(рекомендуемое)

Листинг DCL-программ диалоговых окон в редакторе Visual Lisp

// ------------------------нумерация путей--------------

num_p : dialog {label = "Нумерация путей"; key = "num_win";

: text {label = "Укажите необходимые параметры нумерации"; key = "num_p";

}

: spacer {height = 1;}

: popup_list {

label = "Нумерация";

key = "how";

list = "Четная" "\nНечетная" "\nОбычная";

edit_width = 20;

}

: spacer {height = 1;}

ok_cancel;

}

//---------------------------------------------

//----------------нумерация римскими цифрами------------

roman : dialog {label = "Нумерация главных путей"; key="romka";

: text {label = "Введите римскую цифру, которой нужно пронумеровать путь"; key ="txt_rom";}

: text {label = "ВНИМАНИЕ! Использовать нужно только символы: I, V, X, L, C, D, M"; key ="warning";}

//:spacer {height = 1;}

: edit_box {

label="Цифра: ";

key = "rom_num";

edit_width = 20;

value = "" ;

}

ok_cancel;

}

//---------------------------------------------------------

//--------------нумерация ЦСП------------------------------

numberCSP : dialog {label = "Нумерация стрелочных переводов";key = "numCSPwindow";

:text {label = "Выберите тип нумерации"; key="txt_numCSP";}

:popup_list {

label = "Тип чисел: ";

key = "num_type";

list = "Четные" "\nНечетные";

edit_width = 15;

}

:spacer {height = 1;}

ok_cancel;

}

//-------------------------------------------------------------

//---------------параллельная укладка стрелочных переводов-----

parallel : dialog {label = "Смежные стрелочные переводы с параллельной укладкой"; key = "paral_w";

: text {

label = "Укажите необходимые параметры"; key = "txt_paral";}

: spacer {height = 1;}

:popup_list {

label = "Тип путей: ";

key = "paths";

list = "Главные" "\nПриемоотправочные" "\nПрочие";

edit_width = 20;

}

:popup_list {

label = "Тип рельс:";

key = "type_r_paral";

edit_width = 20;

list = "P65" "\nP50";

}

:popup_list {

label = "Марка двух переводов:";

key = "marka_paral";

list = "1/11 - 1/11" "\n1/9 - 1/9";

edit_width = 20;

}

: spacer {height = 1;}

:popup_list {

label = "Направление первого стрелочного перевода:";

key = "first_napr";

edit_width = 20;

list = "Пошерстное" "\nПротивошерстное";

}

:popup_list {

label = "Направление второго стрелочного перевода:";

key = "second_napr";

edit_width = 20;

list = "Пошерстное" "\nПротивошерстное";

}

:popup_list {

label = "Вид стрелочного перевода:";

key = "view_paral";

edit_width = 20;

list = "Левосторонний" "\nПравосторонний";

}

:edit_box {

label = "Междупутье [e]: ";

value = "";

key = "e";

edit_width = 21;

}

ok_cancel;

}

//------------------------------------------

//-------------попутная укладка----------------

poput : dialog {label = "Смежный стрелочный перевод с попутной укладкой"; key = "poputt";

: text {label = "Укажите необходимые параметры"; key= "txt_pop";}

: spacer {height = 1;}

:popup_list {

label = "Тип путей:";

list = "Главные" "\nПриемоотправочные" "\nПрочие"; // 0 , 1 and 2

edit_width = 31;

key = "type_paths_pop";

}

:popup_list {

label = "Скорости движения:";

list = "До 120 км/ч" "\nПассажирских поездов до 121 км/ч"; //0 and 1

edit_width = 31;

key = "speed_pop";

}

: spacer {height = 1;}

:popup_list {

label = "Тип рельс";

key = "type_r_pop";

edit_width = 31;

list = "P65" "\nP50";

}

:popup_list {

label = "Марки двух стрелочных переводов";

key = "mark_two_pop";

edit_width = 31;

list = "1/11 - 1/11" "\n1/11 - 1/9" "\n1/9 - 1/11" "\n1/9 - 1/9"; //0, 1, 2, 3

}

: spacer {height = 1;}

ok_cancel;

}

//----------------------------------------

//-----------------------окно настроек---------------------------

fix : dialog {label = "Окно настроек свойств примитивов и надписей"; key = "prim_win";

:text {label= "В области ввода отображены рекомендуемые значения (по умолчанию)"; key = "default";}

:text {label = "Толщина линий путей: "; key = "put_wid";}

: edit_box {

label = "Главные пути: ";

edit_width = 25;

key = "mainPUT";

value = 0.5;

}

: edit_box {

label = "Станционные пути: ";

edit_width = 25;

key = "stancPUT";

value = 0.3;

}

:spacer {height = 1;}

:text {label = "Толщина линий стрелочных переводов и параллельных соединений: "; key = "str_wid";}

: edit_box {

label = "Простые стрелочные переводы: ";

edit_width = 25;

key = "str_easy";

value = 0.3;

}

: edit_box {

label = "Смежные стрелочные переводы: ";

edit_width = 25;

key = "smezh_str";

value = 0.3;

}

: spacer {height = 1;}

: edit_box {

label = "Максимальное число нумерации: ";

edit_width = 25;

key = "maxnum";

value = 50;

}

: edit_box {

label = "Размер надписи: ";

edit_width = 25;

key = "sizeS";

value = "3";

}

ok_cancel;

}

//---------------------------------------------

//-------------------сопряжение путей--------------

skrug : dialog {label = "Сопряжение пути"; key = "sk";

: edit_box {

label = "Введите радиус сопряжения";

key = "Rad_skrug";

value = "";

edit_width = "20";

}

ok_cancel;

}

//--------------------------------------------------

//----------------соединение параллельных путей-----

soed_nesok_odin: dialog {label = "Несокращенное одиночное соединение";

: spacer{height=1;} //

: edit_box {

label = "Ширина междупутья е, [м]:";

key = "e";

edit_width=30;

value = "";

} // Ширина междупутья

: edit_box {

label = "Радиус сопрягающей кривой R, [м]:";

key = "R";

edit_width=30;

value = "";

} // Радиус сопрягающей кривой

: spacer{height=1;}

:popup_list {

label="Марка стрелочного перевода:";

key="mark";

list="1/9" "\n1/11";

edit_width=30;

} // Марка перевода

:popup_list {

label="Тип рельсов:";

key="type_r";

list="Р50" "\nР65";

edit_width=30;

} // Тип рельсов

: spacer{height=1;}

:popup_list {

label = "Тип тяги: ";

key = "tyaga";

list = "Тепловозная" "\nЭлектровозная";

edit_width = 25;

}

:toggle {

label = "Предельный столбик";

key = "stolb_checkbox";

value = 0;

}

:toggle {

label = "Мачтовый светофор перед центром перевода";

key = "svet_beforecent_checkbox";

value = 0;

}

:toggle {

label = "Мачтовый светофор внутри перевода (требуется ограничительный столбик)";

key = "svet_inside_checkbox";

value = 0;

}

:toggle {

label = "Мачтовый светофор снаружи перевода (требуется ограничительный столбик)";

key = "svet_outside_checkbox";

value = 0;

}

ok_cancel;

}

//--------------------------------------------------

//---------------стрелочные переводы(универсальная)----

strelka : dialog {label = "Варианты стрелочного перевода"; key = "var_strel";

: text {label = "Выберите нужный вариант стрелочного перевода";}

: spacer {height = 1;}

: popup_list {

label = "Тип рельс: ";

list = "P65" "\nP50";

key = "list_type_r";

edit_width = 20;

}

: popup_list {

label = "Марка стрелочного перевода: ";

list = "1/11" "\n1/9";

key = "list_mark";

edit_width = 20;

}

: popup_list {

label = "Вид стрелочного перевода: ";

key = "view";

list = "Левостороний" "\nПравосторонний";

edit_width = 20;

}

:popup_list {

label = "Направление: ";

list = "Противошерстное" "\nПошерстное";

key = "direction";

edit_width = 20;

}

:edit_box {

Характеристики

Тип файла
Документ
Размер
4,42 Mb
Высшее учебное заведение

Список файлов ВКР

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6540
Авторов
на СтудИзбе
300
Средний доход
с одного платного файла
Обучение Подробнее