Экспорт результатов моделирования в cad системы

ЦЕЛЬ РАБОТЫ: изучить методику экспорта данных в различные CAD системы.

ЗАДАЧИ РАБОТЫ

1. Изучить методику экспорта в CAD системы.

2. Освоить экспорт в текстовый формат.

3. Научиться изменять параметры экспорта в текстовый формат.

ИСХОДНЫЕ ДАННЫЕ: файл Module 4.imp

Контрольные вопросы:

1. Что означают параметры Delimited и Fixed Width для настройки

экспорта в окне Export: ASCII File Format?

Delimited - разделитель между колонками, Fixed Width – фиксированная ширина

2. В какие CAD системы можно экспортировать данные?

Например AutoCAD и MicroStation

3. Какой формат имеют данные, получаемые в результате сканирования?

*.coe

*.dxf

А так же экспорт результатов наземного лазерного сканирования возможен и в текстовый формат(*.txt).

4. Поясните методику экспорта и импорта пространственных моделей в CAD системы?

Экспорт данных в CAD системы осуществляется командой File/ Export. В результате появится окно. При этом необходимо задать путь, где будет храниться файл экспорта.

Для экспорта результатов наземного лазерного сканирования выполните следующие действия:

• выберите тип файла, например, *.coe (cyclone object exchange format) или *.dxf;

• введите имя файла;

• после команды «Сохранить» начнется процесс экспорта. Теперь данный файл готов для импорта в CAD системы.

Экспорт результатов наземного лазерного сканирования возможен и в текстовый формат (*.txt). Для этого:

• дайте команду File/ Export;

• в окне экспорта данных в текстовый формат выберите тип файла *.txt, а также введите имя файла;

• после этого нажмите «Сохранить».

SQL – язык запросов для работы с базами данных.

Лабораторная работа №1

Работа с таблицами базы данных на основе SQL

Цель: Формирование таблиц базы данных

Исходные данные: Текстовые документы - Ведомость.doc и Аттестация.doc на сервере 10.1.103.3

В окне MapBasic напишите инструкцию для добавления трех новых колонок в таблицу Ведомость: Имя Char(15), Отчество Char(20), Оценки Smallint, на основе оператора SQL - ALTER TABLE

ALTER TABLE Ведомость (ADD Имя Char(15), Отчество Char(20), Оценки Smallint)

Откройте таблицу Ведомость после модификации на основе оператора SQL - Browse * From Ведомость.

BROWSE * FROM Ведомость

Ввести записи в таблицу Ведомость на основе оператора SQL -INSERT INTO в соответствии с документом Ведомость.doc. Сохраните таблицу в рабочей папке на основе SQL (Commit Table Ведомость).

INSERT INTO Ведомость VALUES ("Александров", "Денис", "Олегович", "4")

INSERT INTO Ведомость VALUES ("Алентов", "Иван", "Александрович", "4")

INSERT INTO Ведомость VALUES ("Белоус", "Роман", "Сергеевич", "3")

INSERT INTO Ведомость VALUES ("Борисов", "Сергей", "Александрович", "2")

INSERT INTO Ведомость VALUES ("Волошкин", "Вячеслав", "Александрович", "5")

INSERT INTO Ведомость VALUES ("Горлатых", "Константин", "Николаевич", "3")

INSERT INTO Ведомость VALUES ("Гулиев", "Рустам", "Вахидович", "5")

INSERT INTO Ведомость VALUES ("Евсеев", "Алексей", "Викторович", "5")

INSERT INTO Ведомость VALUES ("Егоров", "Максим", "Владимирович", "3")

INSERT INTO Ведомость VALUES ("Ерёменко", "Дмитрий", "Сергеевич", "4")

INSERT INTO Ведомость VALUES ("Ермаков", "Павел", "Иванович", "4")

INSERT INTO Ведомость VALUES ("Иванов", "Павел", "Станиславович", "3")

INSERT INTO Ведомость VALUES ("Каёшкин", "Дмитрий", "Александрович", "3")

INSERT INTO Ведомость VALUES ("Корсиков", "Сергей", "Александрович", "2")

INSERT INTO Ведомость VALUES ("Куданов", "Анатолий", "Валерьевич", "2")

INSERT INTO Ведомость VALUES ("Кузнецов", "Евгений", "Александрович", "4")

INSERT INTO Ведомость VALUES ("Курочкин", "Андрей", "Петрович", "4")

INSERT INTO Ведомость VALUES ("Лысогор", "Мария", "Викторовна", "3")

INSERT INTO Ведомость VALUES ("Попов", "Денис", "Викторович", "4")

COMMIT TABLE Ведомость

Создайте новую таблицу Аттестация в соответствии с документом Аттестация.doc , внесите необходимые данные и сохраните таблицу в рабочей папке на основе SQL (Commit Table Аттестация).

CREATE TABLE Аттестация (Фамилия Char(30), Имя Char(15), Отчество Char(20), Физика Smallint, Информатика Smallint)

INSERT INTO Аттестация VALUES ("Носков", "Виктор", "Сергеевич", "3", "4")

INSERT INTO Аттестация VALUES ("Александров", "Анатолий ", "Иванович", "4", "4")

INSERT INTO Аттестация VALUES ("Иудинов", "Александр", "Семенович", "2", "3")

INSERT INTO Аттестация VALUES ("Дзекановский", "Юрий", "Анатольевич", "5", "5")

INSERT INTO Аттестация VALUES ("Литвинюк", "Александр", "Владимирович", "5", "4")

INSERT INTO Аттестация VALUES ("Сурайкин ", "Виталий", "Викторович", "5", "5")

INSERT INTO Аттестация VALUES ("Бурова", "Ирина", "Александровна", "4", "4")

INSERT INTO Аттестация VALUES ("Вишнякова", "Валентина", "Васильевна", "3", "4")

INSERT INTO Аттестация VALUES ("Леонова", "Татьяна", "Николаевна", "3", "3")

INSERT INTO Аттестация VALUES ("Шикуля ", "Наталья", "Александровна", "2", "2")

INSERT INTO Аттестация VALUES ("Рогозин", "Владимир", "Валерьевич", "3", "2")

INSERT INTO Аттестация VALUES ("Николаева", "Валентина", "Васильевна", "3", "3")

INSERT INTO Аттестация VALUES ("Лебедева", "Галина", "Петровна", "4", "3")

INSERT INTO Аттестация VALUES ("Григорьев", "Иван", "Викторович", "4", "4")

INSERT INTO Аттестация VALUES ("Чащина", "Лилия", "Георгиевна", "5", "5")

INSERT INTO Аттестация VALUES ("Шаран", "Богдан", "Петрович", "3", "2")

INSERT INTO Аттестация VALUES ("Романова", "Жанна", "Евгеньевна", "3", "3")

COMMIT TABLE Аттестация

BROWSE * FROM Аттестация

Лабораторная работа №2

Запросы на выборку и изменение данных на основе SQL

Цель: Изучение методов работы с табличной базой данных.

Выбрать фамилии студентов, получивших отличные оценки по «Информатике» и открыть результаты выборки по команде: Browse * From Selection в отдельной таблице;

SELECT * FROM Аттестация WHERE Информатика = 5

BROWSE * FROM SELECTION

Выбрать студентов, получивших отличные оценки по Физике и Информатике и окрыть результаты выборки по команде: Browse * From Selection в отдельной таблице;

SELECT * FROM Аттестация WHERE Информатика = 5 AND Физика = 5

BROWSE * FROM SELECTION

Выбрать студентов, успевающих по всем дисциплинам и окрыть результаты выборки по команде: Browse * From Selection в отдельной таблице;

SELECT * FROM Аттестация WHERE Информатика > 2 AND Физика > 2

BROWSE * FROM SELECTION

Выбрать студентов, не успевающих по Информатике и открыть результаты выборки в отдельной таблице;

SELECT * FROM Аттестация WHERE Информатика <= 2

BROWSE * FROM SELECTION

Выбрать студентов, получивших неудовлетворительные оценки по всем дисциплинам и открыть результаты выборки в отдельной таблице;

SELECT * FROM Аттестация WHERE Информатика <= 2 AND Физика <= 2

BROWSE * FROM SELECTION

Составить SQL – инструкцию для исправления неудовлетворительных оценок всем студентам по данным дисциплинам на «хорошо». Результаты запроса на иправление оценок открыть в отдельной таблице;

UPDATE Аттестация SET Информатика = 4 WHERE Информатика <= 3

UPDATE Аттестация SET Физика = 4 WHERE Физика <= 3

COMMIT TABLE Аттестация

Подсчитать средний бал по Физике и Информатикена основе базовой таблицыАттестация.

SELECT AVG(Информатика) FROM Аттестация

BROWSE * FROM SELECTION

SELECT AVG(Физика) FROM Аттестация

BROWSE * FROM SELECTION

Подсчитать количество отличных, хороших и удовлетворительных оценок по информатике на основе базовой таблицыАттестация.

SELECT COUNT(*) FROM Аттестация WHERE Информатика = 3

BROWSE * FROM SELECTION

SELECT COUNT(*) FROM Аттестация WHERE Информатика = 4

BROWSE * FROM SELECTION

SELECT COUNT(*) FROM Аттестация WHERE Информатика = 5

BROWSE * FROM SELECTION

Лабораторная работа №3

Запросы на вычисление данных на основе SQL

Цель: Применение оператора Update для обновления данных.

На основе таблицы Зарплатавыбрать работников, перевыполнивших план на 100% и более и открыть результаты выборки по команде: Browse * From Selection в отдельной таблице;

SELECT * FROM Зарплата WHERE Производительность > 100

BROWSE * FROM SELECTION

Повысить зарплату на 15% работникам, перевыполнившим план (100% и более) по данным в таблице;

UPDATE Query1 SET Зарплата = Зарплата + ((Зарплата / 100) * 15) WHERE Производительность > 100

Выбрать работников, перевыполнившим план более чем на 120% и открыть результаты выборки по команде: Browse * From Selection в отдельной таблице ;

SELECT * FROM Зарплата WHERE Производительность > 120

BROWSE * FROM SELECTION

Повысить зарплату на 7% работникам с производительностью труда более чем 120% по данным таблицы Query2;

UPDATE Query2 SET Зарплата = Зарплата + ((Зарплата / 100) * 7) WHERE Производительность > 120

Выбрать работников с производительностью труда 130% и более и открыть результаты выборки в отдельной таблице;

SELECT * FROM Зарплата WHERE Производительность > 130

BROWSE * FROM SELECTION

Назначить премию 10000 рублей работникам с производительностью труда 130% и более по данным таблицы.

UPDATE Query3 SET Зарплата = Зарплата + 10000 WHERE Производительность > 130

Выбрать работников женского пола (с помощью оператора Like) и назначить премию с учетом производительности труда, исходя из базовой выплаты в 15000 рублей за 100 %;

SELECT * FROM Зарплата WHERE Отчество LIKE "%на"

BROWSE * FROM SELECTION

UPDATE Query4 SET Зарплата = Зарплата + (15000 * Производительность/100)

Подсчитать сумму выплат зарплат со всеми доплатами на основе таблицы Зарплата;

SELECT SUM(Зарплата) "Сумма зарплат" FROM Зарплата

Подсчитать среднюю зарплату по данным таблицы Зарплата.

SELECT AVG(Зарплата) "Средняя зарплата" FROM Зарплата

Лабораторная работа №4

Запросы на основе SQL

Цель: Изучение методов работы с табличной базой данных

Выбрать государства, население которых (по колонке pop_1994) находится в диапазоне 200000000 и 500000000 человек, на основе оператора Between.

SELECT * FROM World WHERE Pop_1994 BETWEEN 200000000 AND 500000000

BROWSE * FROM SELECTION

Вычислить количество жителей на Земном шаре.

SELECT SUM(Pop_1994) "Количество жителей" FROM World

BROWSE * FROM SELECTION

Вычислить количество жителей в Российской Федерации.

SELECT Pop_1994 "Количество жителей в РФ" FROM World WHERE COUNTRY = "Russian Federation"

BROWSE * FROM SELECTION

Вычислить количество жителей на Азиатском континенте.

SELECT SUM(Pop_1994) "Количество жителей в Азии" FROM World WHERE Continent = "Asia"

BROWSE * FROM SELECTION

Выполнить SQL запрос на основе оператора Like из таблицы «World» всех государств азиатского континента, начинающихся на букву J

SELECT Country FROM World WHERE Country LIKE "J%" AND Continent = "Asia"

BROWSE * FROM SELECTION

Выполнить SQL запрос на основе оператора In из таблицы «World» для выбора всех государств, расположенных на Европейском континенте

SELECT Country FROM World WHERE Continent IN ("Europe")

BROWSE * FROM SELECTION

Выполнить запрос на основе функции Area (obj, "sq km") для вычисления площади государств, расположенных на Азиатском континенте.

SELECT Area(obj, "sq km") FROM World WHERE Continent = "Asia"

BROWSE * FROM SELECTION

Вычислить площадь территории Российской Федерации.

SELECT Area(obj, "sq km") FROM World WHERE Country = "Russian Federation"

BROWSE * FROM SELECTION

Вычислить плотность населения на территории Российской Федерации.

SELECT Area(obj, "sq km"), Pop_1994 FROM World WHERE Country = "Russian Federation"

SELECT col2/col1 FROM Query9

BROWSE * FROM SELECTION

Лабораторная работа №5

Запросы и подзапросы на основе SQL

Цель: Изучение методов работы с табличной базой данных

Составьте инструкцию на объединение данных из двух таблицWorldи WorldCapдля получения третьей таблицы (Query1), в которой три колонки Continent, Country и pop_1994должны быть взяты из таблицыWorld,а две колонкиCapitalи Cap_Popдолжны быть из таблицыWorldCap.

SELECT World.Continent, World.Country, World.pop_1994, WORLDCAP.Capital, WORLDCAP.Cap_Pop FROM World, WORLDCAP WHERE World.Capital = WORLDCAP.Capital

BROWSE * FROM SELECTION

Подсчитайте количество жителей, проживающих во всех государствах (по колонке pop_1994) и столицах (по колонке Cap_Pop )из таблицыQuery1.

SELECT Sum(Pop_1994), Sum(Cap_Pop) FROM Query1

BROWSE * FROM SELECTION

Подсчитать количество жителей во всех государствах (по колонке pop_1994из таблицы Query1),проживающих на Азиатском континенте.

SELECT Sum(Pop_1994) FROM Query1 WHERE Continent = "Asia"

BROWSE * FROM SELECTION

Выбрать государства из таблицы Query1, население которых (по колонке pop_1994) находится в диапазоне 2000000 и 5000000 человек, на основе оператора Between.

SELECT Country, Pop_1994 FROM Query1 WHERE Pop_1994 BETWEEN 2000000 AND 5000000

BROWSE * FROM SELECTION

Выполните SQL запрос на основе оператора Like из таблицы World всех государств Азиатского континента, начинающихся на букву N.

SELECT Country FROM Query1 WHERE Continent = "Asia" AND Country LIKE "N%"

BROWSE * FROM SELECTION

Выполните SQL запрос из таблицы World для выбора всех государств (с учетом подзапроса на основе оператора In из таблицы WorldCap) с населением в столицах (в колонке Cap_Pop) более 9000.

SELECT World.Country, WORLDCAP.Cap_Pop FROM World, WORLDCAP WHERE (World.Capital = WORLDCAP.Capital) AND WORLDCAP.Cap_Pop > "9000"

Выполнить запрос с подзапросом на основе таблиц World и WorldCap для выбора всех государств, расположенных на Европейском континенте, где население в столицах более 100000.

SELECT World.Country, WORLDCAP.Cap_Pop FROM World, WORLDCAP WHERE (World.Capital = WORLDCAP.Capital) AND Continent = “Asia” AND WORLDCAP.Cap_Pop > "1000"

Лабораторная работа №6

Цель: Изучение методов работы с табличными базами данных

Составьте SQL инструкцию для вычисления количества городского и сельского населения в процентном отношении во всех областяхРоссийской федерации на основе таблицы RUS_OBL.

SELECT Name_r , ROUND (городское_1995 / (sum_1995 / 100), 1) "Процент городского населения", ROUND(сельское_1995 / (sum_1995 / 100), 1) "Процент сельского населения" FROM RUS_OBL

BROWSE * FROM SELECTION

Составьте инструкцию на объединение данных из двух таблицRUS_OBLи CITY_200 для получения третьей таблицы (Query2), в которой две колонки Name_r и sum_1995должны быть взяты из таблицыRUS_OBL,а две колонкиRus_nameи Pop_1995должны быть из таблицыCITY_200.

SELECT RUS_OBL.Name_r, RUS_OBL.sum_1995, CITY_200.Rus_name, CITY_200.Pop_1995 FROM RUS_OBL, CITY_200 WHERE RUS_OBL.АББ = CITY_200.АББ

BROWSE * FROM SELECTION

Подсчитайте количество жителей, проживающих во всех областях (по колонке sum_1995) и областных центрах (по колонке Pop_1995 )из таблицыQuery2.

SELECT sum(sum_1995), sum(pop_1995) FROM Query2

BROWSE * FROM SELECTION

Выполните SQL запрос из таблицы RUS_OBLдля выбора всех областей (с учетом подзапроса на основе оператора In) и городов (из таблицы CITY_200), основанных более 400 лет назад.

SELECT RUS_OBL.Name_r, CITY_200.Rus_Name, CITY_200.Год_основания FROM RUS_OBL, CITY_200 WHERE (RUS_OBL.АББ = CITY_200.АББ) AND ((2016 - CITY_200.Год_основания) >= 400)

BROWSE * FROM SELECTION

Выполнить запрос из таблицы Компании для выбора фамилии сотрудника (ФИО) и названия города (Город) с подзапросом из таблицы CITY_200 для выбора города, основанного в 903 году.

SELECT Компании.ФИО, Компании.ГОРОД, CITY_200.Год_основания FROM Компании, CITY_200 WHERE CITY_200.Rus_Name = Компании.Город AND CITY_200.Год_основания = 903

BROWSE * FROM SELECTION

Лабораторная работа №7

Цель: Применение методов работы с табличными базами данных

Составьте SQL инструкцию для создания новой таблицы УЛИЦЫ_МОСКВЫ с одной текстовой колонкой Названия_улиц.

CREATE TABLE УЛИЦЫ_МОСКВЫ (Названия_улиц Char(100))

Browse * From УЛИЦЫ_МОСКВЫ

Подсчитайте количество улиц по таблице УЛИЦЫ_МОСКВЫ.

INSERT INTO УЛИЦЫ_МОСКВЫ SELECT R_Name FROM M_STREET

SELECT COUNT(*) FROM УЛИЦЫ_МОСКВЫ

BROWSE * FROM SELECTION

На основе данных таблицы M_STREET определите длины улиц Москвы с помощью функции ObjectLen(obj, "km").

SELECT R_Name, ObjectLen(obj, "km") FROM M_STREET

BROWSE * FROM SELECTION

Определите самую длинную улицу Москвы.

SELECT R_NAME, MAX(ObjectLen(obj, "km")) FROM M_STREET

BROWSE * FROM SELECTION

Определите общую длину всех улиц Москвы.

SELECT SUM(ObjectLen(obj, "km")) FROM M_STREET

BROWSE * FROM SELECTION

Определите длину реки Москвы по данным таблицы WATER.

SELECT ObjectLen(obj, "km") FROM WATER

BROWSE * FROM SELECTION

Наши рекомендации