Ібейд Мухаммед Абд аль-хаді

Факультет: Обчислювальної техніки та інформатики

Кафедра: Прикладної математики та інформатики

Спеціальність: Програмне забезпечення автоматизованих систем

Тема випускної роботи: Розробка тривимірних моделей на базі програмного забезпечення Google.

Науковий керівник: доц. Анопрієнко А.Я. http://aanoprienko.moikrug.ru    або    http://masters.donntu.ru/anoprienko

 
 
  Матеріали по темі випускної роботи  
                                                                                Автореферат
   

Введення

Що таке Карта Google API ?
Google API означає " Інтерфейс Програмованих Додатків ". Як і передбачає назва, це інтерфейс, який робить запит в базі даних Google, щоб допомогти програмістам в розробці своїх додатків. На цьому етапі важливо пам'ятати, що весь Google API доступний лише в бета-версії. Це означає, що більшість з програм все ще знаходяться в початковому випробному випуску і що там ще можуть бути деякі корективи, які необхідні для деяких з них, хоча я повинен чесно сказати, що я цілком задоволений тим, що я бачив до сих пір. За визначенням, Google API складається в основному з спеціалізованих веб-служб, програм і спеціалізованих скриптів, які дозволяють розробникам інтернет - додатків краще знаходити й обробляти інформацію в Інтернеті. По суті, Google API може використовуватися в якості додаткового ресурсу в своїх програмах.
Програма Google Earth, яка підключається і її АРІ JavaScript дозволяє вставляти Google Earth, трьохвимірний цифровій світ, в свою веб-сторінку. За допомогою API можна використовувати маркери і ліній, зображення місцевості, додавати трьохвимірні моделі або завантажувати файли KML, що дозволяють створювати складні трьохвимірні карти додатків. Якщо у вас вже є сайт мап API, ви можете активувати Вашу трьохвимірну сторінку в якості лише одного рядка коду.
 
Наскільки ефективно використовується Google API? 

У реальному світі прикладні програмісти, розробники та інтегратори пишуть програми, які можуть віддалено підключитися до Google API. Все пересилання даних здійснюється через Простий Протокол Доступу до Об’єктів (ППДО) ( "Simple Object Access Protocol (SOAP)), який є стандартами веб-послуг, як це визначено у галузі.  Протокол ППДО являє собою XML-технологію,за допомогою якої легко обмінюватися інформацією, введеною у веб-додатки. API Google може краще допомогти розробникам в легкому доступі до даних веб-пошуку Google, їх можливості у розробці програмного забезпечення, яке може створювати запит мільярди веб-документів, що постійно оновлюється пошуковими агентами Google. Програмісти можуть ініціювати запити більш ніж трьох міліардів сторінок до величезного індексу Google  і мати результати доставлений до них у вигляді структурованих даних,  які легко аналізувати і з якими легко працювати. 
Крім того, в Google API можна без пауз звернутися до даних в кеші Google, і в той же час забезпечити перевірку на правильність написання слів. Google API фактично здійснить стандартизований пошук синтаксису, який  використовується на багатьох із властивостей пошуку Google.

 

                              

                                                                                    Карта Google API Показує Піраміди Єгипту


Актуальність теми
Як створити тривимірні моделі?
Ми можемо створити тривимірну модель у відповідності з великою кількістю програм, але для створення тривимірної моделі землі в Google, ми надаємо перевагу Google SketchUp. Вона дуже потужна.
Google SketchUp – це безкоштовна, проста програма тривимірного моделювання з декількома простими інструментами, які дозволяють створювати тривимірні моделі будинків, сховищ, палуб, домашніх добудов, деревообробних проектів і навіть космічних кораблів. Ви можете додавати деталі, тканини і скло до своєї моделі і проектувати з просторовою точністю. Ви можете розмістити свої закінчені моделі в Google Earth, обмінюватися ними з іншими, відправляючи їх до трьохвимірного складу, або роздруковувати копії. Google SketchUp – це чудовий спосіб з’ясувати, чи тривимірне моделювання для тебе.
Ця заснована на ескізі тривимірна моделююча програма пропонує набір сильних інструментів малюнка, які інтуїтивно багато програм проекту не в змозі досягти. При першому враженні Google SketchUp може бути схоже, що вона пожертвувала функцією задля простоти, але це не так. Незважаючи на надзвичайно легкий у використанні інтерфейс, SketchUp пропонує набір сильних тривимірних інструментів малюнку, які дозволяють вам експериментувати і грати з новими проектами. Використовуючи базові форми в тривимірному місці для вашого ескізу, ви можете замінити ті форми, що створюють будівлі, будинки чи дійсно що-небудь. Фактично існує ряд методів для створення моделей і вони всі забезпечені чудовими учбовими посібниками, коли ви тільки-но починаєте. Ви можете вибрати з ряду реалістичної текстури, щоб відобразити деревину, бетон, траву і т.д. Коли ваша модель закінчена, ви можете зберегти та надрукувати її або ви можете навіть бачити це на справжній мапі в Google Earth. Нам дійсно подобається, як просто це - створити моделі, використовуючи цю програму і рекомендуємо її всім від людини, захопленій своїм хобі, для експериментування та розваги, до професіонала, який може використовувати цю програму для попередніх ідей великих проектів.
 
Створення 3D-моделей 
 
Google SketchUp є інструментом для створення, редагування і обміну трьохвимірними моделями. «Секретним інгредієнтом» SketchUp  є унікальний набір потужних інструментів, які розроблені для легкості вивчення і застосування.
 
Особливості 
Краї і поверхня
Кожна модель SketchUp складається тільки з двох речей: країв і поверхонь. Краї – це прямі лінії,а поверхні – це двовимірні форми, які створені, коли кілька країв формують плоску петлю. Наприклад, прямокутна поверхня з’єднана чотирма краями, які пов'язані разом під прямим кутом. Щоб побудувати моделі в SketchUp, Ви малюєте краї та поверхні, використовуючи кілька простих інструментів, які Ви можете вивчити за невеликий проміжок часу. Це дуже легко.
 
Натиснути / Тягнути: Швидко переходьте з дво- до тривимірного простору
Витіснить будь-яку плоску поверхню в тривимірну форму з запатентованим інструментом Натиснути / Тягнути  SketchUp. Тільки клацніть, щоб почати натискати, переміщати Вашу мишу, і клацніть ще раз, щоб зупинитися. Ви можете натиснути / тягти прямокутник в квартал або малювати схему сходів та натиснути / тягти її в тривимірний простір.  Бажаєте зробити вікно? Натисніть/ Тягніть отвір через стіну. SketchUp відомий тим, що він є зручний, і Натиснути/ Тягти – причина цьому.. 
 
Точні вимірювання: Робота з точністю 
SketchUp є чудовим для швидкої і вільної роботи в тривимірному просторі, але це - більше ніж тільки імпровізований електронний олівець. Оскільки Ви працюєте за комп’ютером , все, що Ви створюєте в SketchUp, має точне вимірювання. Якщо ви готові, Ви можете побудувати моделі, які настільки ж точні, на скільки ви бажаєте. Якщо Ви хочете, Ви можете надрукувати виміри своєї моделі, і якщо Ви маєте SketchUp PRO, ви можете навіть експортувати свої виміри в інші програми  такі, як AutoCAD та 3ds MAX.
 
Йди за Мною (Follow Me): Створіть складні виштовхування і броблені на токарному верстаті форми
Ви використовуєте інновації SketchUp, натискуєте інструмент Йди за Мною (Follow Me), щоб створити тривимірні форми, витісняючи двовимірні поверхні вздовж визначених шляхів. Змоделюйте зігнуту трубу, малюючи коло вздовж лінії форми L. Створіть пляшку, малюючи половину її зображення, тоді використайте Йди за мною (Follow Me), щоб провести її вздовж кола. Ви можете навіть використати Йди за Мною, щоб заокруглити краї на предметах таких, як поруччя, меблі та електронні пристрої.
 
Область пам'яті забарвлення: Застосувати кольору і текстуру
Ви можете використовувати інструмент Paint Bucket SketchUp, щоб намалювати Вашу модель  з матеріалом, таким як колір і структура.
 
Групи та Компоненти: Сформуйте smarter моделі 
" Склеюючи " частини вимірів моделі, створюючи Групи, Ви можете створити підоб'екти, які легше перемістити, скопіювати і сховати. Компоненти багато походять на Групи, але зі зручною відміною: копії компонентів пов'язані разом, так змінюючи ви автоматично робите зміни всього іншого. Вікна, двері, дерева, стільці і мільйони інших речей мають перевагу з цієї дії.
 
Тіні: Виконайте дослідження відтінку і додайте реалізм 
Сильний, реальний Shadow Engine SketchUp дозволяє Вам виконувати точні дослідження відтінку своїх моделей.
Ви можете використовувати інтерактивну особливість Секції (Sections) SketchUp, щоб тимчасово зрізати частини Вашого проекту, дозволяючи Вам зазирнути всередину. Ви можете використовувати Секції, щоб створити орфографічні представлення (як загальні топологічні структури), експортувати виміри в програми CAD, використовуючи SketchUp Pro або лише отримати краще представлення Вашої моделі, в той час як Ви працюєте над нею. Панелі Секції можуть переміщатися, обертатися і навіть анімувати, використовуючи особливість Пейзажів (Scenes) SketchUp.
 
Пейзажі: Збережіть уявлення і створіть мультиплікацію 
Ми створили Пейзажі (Scenes), щоб дозволити Вам легко зберегти точні уявлення вашої моделі, таким чином Ви можете повернутися до них пізніше. Необхідно створити мультиплікацію? Просто створіть декілька Пейзажів і натисніть кнопкою. 
 
Озирнутися і Йти: Дослідіть свої створення безпосередньо 
SketchUp дозволяє Вам проникати всередину своєї моделі за допомогою ряду простих навігаційних інструментів, розроблених, щоб висловити вашу початкову думку.  Натисніть Положення Камери (Position Camera), щоб "бути" де-небудь на Вашій моделі. Використайте Озирнутися (Look Around),  щоб повернути Вашу віртуальну голову. Нарешті, переключіть  Йти (Walk), щоб досліджувати Ваш витвір пішки; Ви можете навіть піднятися і спуститися по сходах і схилам, точно так само, як Ви граєте у відеоігри. 
 
Вимірювання та Лейбли: Додайте інформацію до своїх проектів 
Ви можете використовувати суперінтуітівні інструменти Вимірювання і Лейбл (Dimension and Label), щоб додати вимірювання, коментарі та інші чудові деталі до Вашої роботи. 
 
Інструктор: вловити сенс швидко 
Діалогове вікно SketchUp, яке Ви можете активувати в будь-який час, забезпечує контекстну допомогу.
Коли ви будуєте велику, складну модель, речі можуть стати брудними дуже швидко. SketchUp забезпечує два корисних способи тримати Вашу побудову керованою.
 
Google Earth: Дивись свої моделі в контексті 
SketchUp і Google Earth - частина тієї ж самої серії продукту, що означає, що Ви можете легко обмінюватися інформацією між ними. Бажаєте побудувати дільницю для свого проекту? Імпортуйте виміряне повітряне зображення, включаючи топографію, безпосередньо з  Google  Earth в SketchUp, клацаючи однією кнопкою. Хочете бачити свою модель SketchUp в контексті Google  Earth? Клацніть іншою кнопкою, і Ви зможете. Будь-хто може використовувати SketchUp, щоб побудувати моделі, які можуть бути помічені будь-ким в Google  Earth.
 
Інструменти Sandbox: Робота над ландшафтом 
Інструменти Sandbox SketchUp дозволяють Вам створювати, оптимізувати і змінювати тривимірний ландшафт. Ви можете створити точний краєвид від ряду імпортованих контурних ліній, додати виступи і долини для стоку і створити будівлі та дорогу. 
 
Тривимірний Склад: Знайдіть моделі майже всього, що Ви потребуєте 
Тривимірний Склад Google - величезний, онлайн склад тривимірних моделей, які Ви можете шукати, коли Ви потребуєте чогось. Навіщо щось створювати, коли Ви можете завантажити це безкоштовно?. 
 
Імпортуйте DXF, DWG і 3DS: Отримайте початковий старт свого моделювання 
Ви можете імпортувати DXF, DWG і 3DS файли безпосередньо у Ваші моделі SketchUp, які роблять їх дуже легким для початку з малюнком і навіть інших тривимірних моделей. Маєте загальну топологічну структуру місця, яку Ви повинні змоделювати? Імпортуйте це, і почніть будувати прямо зверху цього.
 
Зображення імпорту: малюємо стіни з фотографіями 
З SketchUp Ви можете імпортувати файли зображення такі,як JPG, TIFF, PNG і PDF.Ви можете використовувати їх ( як у вигляді постеру), але Ви можете також прикріпити їх на поверхні, щоб створити фотореалістичні моделі будівель, проектів пакету і т.д.. 
 
Експорт  TIFF, JPEG та PNG 
SketchUp дозволяє Вам експортувати растрові зображення до 10 000 квадратів пікселів, таким чином роблячи зображення, яке Ви можете надіслати по електронній пошті, помістити в документі, чи проект на стіні так само легко як вибирати кілька опцій і натиснути (Export).
 
             
                                                                            рісонок тривимірна модель для пірамід і сфінкса
 
Використання API планета земля для тривимірних моделей.
 
Історія - для Покоління тривимірних моделей APIs
Стійкий прогрес в апаратній технології полегшив розвиток ряду 3 програмних інтерфейсів додатка Столу і стандартів. У mid-seventies зростаюче усвідомлення потреби в графічних стандартах наводило до першого покоління 3 програмних інтерфейсів додатка Столу як наприклад Ядро (раптово для, 3 Графогенератор Ядра Столу), вироблюване SIGGRAPH Комітетом ACM у 1977.
2 компоненти Столу Ядра були пізніше розширені і забирається, аби бути, перший офіційно стандартизував графічну специфікацію звернувся до Графічної Ядерної Системи (GKS)(Foley, 1996). Протягом ранніх восьмидесятих, декілька 3 стандарти програмного ІНТЕРФЕЙСУ додатка Столу розвивалися, аби обслуговувати для автоматизованих робочих місць, що недавно з'являються. Ці другі програмні інтерфейси додатка покоління дозволили створення мережі і основне апаратне прискорення (Mohan, 1998).
Двоє з цих програмних інтерфейсів додатка були пізніше стандартизовані 1988; Стіл GKS-3 і значно більше досвідчена і складна система звернулися до Ієрархічного Interface Графогенератору Програміста (PHIGS). Оскільки ім'я свідчить, що PHIGS підтримує вкладені ієрархічні угрупування 3 примітивів Столу під назвою структури (Foley, 1996).Ці угрупування, послався на те, як дисплейні файли, мають перевагу лише, доводившись описати складний об'єкт одного дня, навіть якщо показано в окремі часи.
Ця здатність особливо коштовна, де об'єктні дані, які показані, повинні передаватися через низьку мережу пропускної спроможності. Один недолік дисплейного файлу - трудність в re-specifying об'єкт, якщо це continuously, будучи оновленим завдяки призначеній для користувача взаємодії (Segal, 1994).
Роєктіруєтся з додатковим набором особливостей для людини нового часу pseudorealistic, що надає об'єктів на растрі, системи індикації (Foley, 1996). Проте, головний недолік на всіх цих програмних інтерфейсах додатка є, що вони відчувають недолік підтримки ряду більш авансованого, надаючи особливості як наприклад texture картографія (Segal, 1994).
Інший програмний iнтерфейс додатка, випущений кругом це час, був PEX, який є продовженням до системи X Вікна, гашеной для управління і малюнка 3 об'єктів Столу. Поки це засновано на PHIGS, PEX дозволяє передачу безпосереднього режиму. Це означає, що об'єкти показані, оскільки вони описуються замість перший доводиться завершити дисплейний файл.
Поки PEX не підтримує авансовано, надаючи особливості і лише доступний X користувачі вікон, його методи звиклися описувати і об'єкти оплати подібні до тих, забезпеченим OPENGL (Segal, 1996).
Пізній 1980 s бачив редакцію стандарту OPENGL, заснованого на АЙРІС GL Кремнієвою Графікою. Вона узяла високоякісний 3 ринок графіки Столу штормом.
Подібно PEX перед тим, як це OPENGL запропонував графіку безпосереднього режиму разом із збільшеними здібностями освітлення і просував особливості подібно texture картографії і згладжуванню (Mohan,1998). OPENGL також дозволив апаратне прискорення, якщо технічні засоби підтримували вимоги точної відповідності.
Це, проте, прагнув бути дорогими технічними засобами (поки недавно, коли дешевший OPENGL підтримував технічні засоби став доступним) і так OPENGL прагнув бути більш направленим на автоматизовані робочі місця CAD і автоматизоване КОНСТРУЮВАННЯ (Microsoft, 1995).
Низький рівень встановив ціну, ринок ПК залежав від 2.5D(3D з вигляду але використовуючи 2D техніка подібно до Долі і Hexen) і основний 3D(подібно Пекельною Ultima) DOS базував графічні двигуни для геймів (De Йде 1996).
З прибуттям Windows 95, Microsoft також випустив DirectX, який включав Прямим 3D з метою створення API, який був націлений на забезпечення більшості з авансованих особливостей OpenGL особливо для 3D, що грає оточення (Microsoft, 1995).
Спочатку API був бідною імітацією, яка була обмежена і важка, аби використовувати.
На відміну від OPENGL хоча, це було неодноразово виправлено і є багато більш інноваційний у введенні нових особливостей (незабаром (a) 1999).
Найбільш недавно четверте покоління програмних інтерфейсів додатка почало з'являтися використання scenegraph- засновані системи. Ета гнучка деревовидна структура подібна до техніки дисплейного файлу використовував в PHIGS і інших ранніх APIs але значно більше здоровий.
Система об'єднує ряд попередніх ідей як наприклад зворотне облицювальне полігон видалення і дерева BSP. Ці нові APIs включають продовження в тих, що існують APIs як наприклад Оптимізатор OpenGL SGI і за Фаренгейтом Microsoft.
Одна проблема з цими п APIs є, що програмістові все ще потрібне деяке розуміння API низького рівня лежання в основі. Проте, один цілком новий API у цій групі - Java 3D і тому що це було побудовано, використовуючи scene-graph-based систему з початку, вона не вимагає як крутий повчальна крива, дозволяючи легкий доступ нових користувачів всередину 3D оточення розвитку (Mohan, 1998).
 
Вимоги API
 
Ряд фундаментальних розглядів діалоговий 3D програмні інтерфейси додатка графіки APIs адреса. Аби надати 3D місця дії лише скромної складності вимагає багаточисельних обчислень і коли гашений в інтерактивній системі повинен зробити це в окремі часи за секунду. Тому API ідеально потрібно б бути здатним звернутися до можливостей графічних технічних засобів (Segal, 1994).
Інтерфейс повинен також забезпечити різносторонність у формі дозволу програміста перемкнутися або від різних надаючих особливостей. Це дозволяє програмістові кроїти виконання додатка до системи, на якій це бігом.
Це також означає, що протягом часів високих діалогових норм, як наприклад наладка позиції камери performance-degrading комбінації особливостей можуть бути вимкнені. Камера може потім бути переміщена без втрати виконання і переглядач не зверне увагу на зменшення детально на зображенні, що рухається. Коли рух повний, особливості можуть бути перемкнуті назад на для завершальної рамки (Segal, 1994).
Всі програмні інтерфейси додатка приходять з великим масивом функцій в їх бібліотеці. Тому, функції в кожному з API, обговорюваних в цьому папері, будуть розбиті на шість груп за твердженням їх функціональність:
1. Примітивні функції, які визначають низький рівень або атомні об'єкти, які можуть бути показані.
2.
Припишіть функції, які дозволяють діям виконуватися на тих об'єктах як наприклад колір, заштриховувавши і текстурування.
 
3. Візуальний відображуючи функції, які API забезпечує як наприклад розташування, орієнтуючи і вибираючи еквівалент лінзи.
 
4. Види функцій перетворення, доступних, аби програміст маніпулював об'єктами.
5.
Що вхідні функції забезпечені, дозволяючи різносторонність з різними зовнішніми пристроями.
6.
Контроль функціонує, це дозволяє нам бути здатним працювати мульті, обробляючи, мульті вікно і networked оточення разом з
      ініціалізацією і помилкою, що управляє функціями.
 

 
      Литература  
     -   http://www.rankforsales.com/google-api-s-and-their-uses.html
          The Google API's and their uses
     -   http://download.cnet.com/Google-SketchUp/3000-6677_4-10257337.html
           Publisher's description of Google SketchUp, 3D models made simple
     -   http://www.4all2all.net/2008/11/google-sketchup-creating-3d-models.html
          Google SkechUp - creating 3D models
     -   http://uob-community.ballarat.edu.au/~rdazeley/Papers/SelfStudy.pdf
           3D APIs in Interactive Real-Time Systems: Comparison of OpenGL, Direct3D and Java3D.
           Written by: Richard Dazeley , Supervised by: Peter Vamplew
     -    http://earthurl.org/#0sv-2Fm3h-FAyjBu4FwtB-gH
           earthurl.org