Как сделать интернет- приложение
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как сделать интернет- приложение

Как сделать интернет- приложение

Ответ
Поиск в этой теме
Непрочитано 08.08.2014, 12:04 #1
Как сделать интернет- приложение
SASH24
 
Регистрация: 21.07.2014
Сообщений: 2

Я немного программирую на лиспе
и есть идея создать интернет приложение.
на веб странице вводим данные (например длинну и ширину)
по этим данным строится прямоугольник в автокаде, и далее
этот чертеж (dxf) доступен для скачивания, пользователю который вводил данные.
не знаю с чего начать , в какую сторону копать )
подскажи пожалуйста как это можно осуществить?
какой язык программирования для этой конкретной задачи
подойдет больше всего? или их будет несколько?
Спасибо за внимание.
Просмотров: 8809
 
Непрочитано 08.08.2014, 12:19
#2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,411


Начинать с JavaScript и изучения DXF Reference
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 08.08.2014, 12:33
#3
Makson


 
Регистрация: 24.04.2008
Сообщений: 1,132


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Начинать с JavaScript и изучения DXF Reference
Зачем JavaScript?? На PHP формирует текстовый файл с разрешение DXF. Куда проще то?
Makson вне форума  
 
Непрочитано 08.08.2014, 12:46
#4
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


Цитата:
Сообщение от SASH24 Посмотреть сообщение
по этим данным строится прямоугольник в автокаде
Если именно в автокаде (то есть чертеж достаточно сложный чтоб его в рукопашную реализовать в dxf), то здесь возникают некоторые ограничения по производительности (автокад работает только в один поток), хотя начиная с версии 2013 есть консоль - тогда сервер запускает процесс создания консольной сессии автокада, который в свою очередь формирует чертеж. Есть и более просто вариант - сервер отмечает специальные поля БД с параметрами чертежа, а отдельная программа сканируя их (либо, в зависимотси от используемой БД, подключенная на события изменения), так-же запускает процесс автокада который генерирует файл и заполняет поле с его адресом - что есть флаг готовности ответа; так-же плюс данного варианта - если набор параметров для построения сделать ключевыми полями - то автоматически будет кэширование результатов.
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Автор темы   Непрочитано 09.08.2014, 14:04
#5
SASH24


 
Регистрация: 21.07.2014
Сообщений: 2


Всем доброго времени суток)
Немного уточню)
прямоугольник был для примера)
Чертеж намного сложнее. Используются построения дополнительных линий и окружностей, находятся их точки пересечения , которые используются дальше для построения чертежа. Выделяются наборы с примитивами , потом они перемещаются , поворачиваются , зеркалятся и т.д.
Я думаю, что это все, лучше делается в автокаде. или я не прав? на php такое тоже возможно?

Программист я начинающий, поэтому сильно не пинайте)
но есть желание разобратся )

web страница или сайт (на которой вводятся данные) должна быть доступна круглосуточно.
Предполагаю что автокад нужно установить на сервер.

кто нибудь делал что то подобное?
какие языки программирования использовал?
не подскажите литературу по JavaScript и DXF Reference на русском языке?

----- добавлено через ~17 мин. -----
Цитата:
Сообщение от Дима_ Посмотреть сообщение
Если именно в автокаде (то есть чертеж достаточно сложный чтоб его в рукопашную реализовать в dxf), то здесь возникают некоторые ограничения по производительности (автокад работает только в один поток), хотя начиная с версии 2013 есть консоль - тогда сервер запускает процесс создания консольной сессии автокада, который в свою очередь формирует чертеж. Есть и более просто вариант - сервер отмечает специальные поля БД с параметрами чертежа, а отдельная программа сканируя их (либо, в зависимотси от используемой БД, подключенная на события изменения), так-же запускает процесс автокада который генерирует файл и заполняет поле с его адресом - что есть флаг готовности ответа; так-же плюс данного варианта - если набор параметров для построения сделать ключевыми полями - то автоматически будет кэширование результатов.
не очень понятно)
это все на php можно реализовать?
подскажите что почитать , чтоб разобратся)
SASH24 вне форума  
 
Непрочитано 09.08.2014, 16:09
#6
trir


 
Регистрация: 18.12.2010
Сообщений: 5,108


Я видел много желающих сделать подобное, но не видел результатов
Пока единственное, что существует -это web вьверы, типа AutoCAD 360

http://cadsofttools.ru/products/web_cad_sdk/

http://cadsofttools.ru/products/dxf_export_java/
trir вне форума  
 
Непрочитано 09.08.2014, 16:25
#7
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,499


Цитата:
Сообщение от SASH24 Посмотреть сообщение
Чертеж намного сложнее. Используются построения дополнительных линий и окружностей, находятся их точки пересечения , которые используются дальше для построения чертежа. Выделяются наборы с примитивами , потом они перемещаются , поворачиваются , зеркалятся и т.д.
Количество вариантов входных данных большое? Нельзя сгенерировать кучу dwg файлов средствами того же лиспа по массивам входных данных и потом лишь выдергивать нужный на сайте?
Сергей812 вне форума  
 
Непрочитано 09.08.2014, 17:24
#8
SetQ

конструктор
 
Регистрация: 21.07.2007
Петрозаводск
Сообщений: 2,105


Вариант для начинающих: сначала написать программу на Лиспе, которая берёт исходные данные из текстового файла, рисует всё в Автокаде и сохраняет результат в файл чертежа. Потом написать веб-форму, которая из ячеек ввода сохраняет числа в текстовый файл, запускает автокад, запускает программу на Лиспе, выдаёт полученный чертёж.
SetQ вне форума  
 
Непрочитано 09.08.2014, 20:09
#9
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


http://forum.dwg.ru/showthread.php?t=17470 пост 13 и 107
__________________
Как использовать код на Лиспе читаем здесь

Последний раз редактировалось VVA, 09.08.2014 в 20:21.
VVA вне форума  
 
Непрочитано 09.08.2014, 20:10
#10
trir


 
Регистрация: 18.12.2010
Сообщений: 5,108


http://app.autocad360.com/jsapi/v2/G...art/index.html
trir вне форума  
 
Непрочитано 09.08.2014, 20:39
#11
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Программист я начинающий
И за такие задачи не стоит браться - где-то в Web использовать AutoCAD. Тем более мечтать
Цитата:
Предполагаю что автокад нужно установить на сервер.
Да кто же это даст, как Вы его сумеете там установить?

Как работает "Web":

1. Где-то на специальной удаленной машине работает (как правило, под одной из Linux-подобных OS) работает программа Web-сервер. Чаще всего Apache. Ну, для начала можно и на собственном компьютере установить, например Denver.
Web-сервер "слушает" определенные порты и по запросам браузера выдает текст страниц в формате HTML. Это самый простейший вариант.

Но теперь обычно сложнее. На сервере могут исполняться различные скрипты на разных языках. Для этого должна быть установлена специальная программа. Сейчас чаще всего используется PHP. Посмотрите в адресную строку этой страницы - там наподобие http://forum.dwg.ru/showthread.php?t=114352#post1297710

Это обращение к PHP-файлу с параметрами, следующими после знака вопроса. Теперь сначала PHP (его модули, которые тоже живут на сервере) обработает этот запрос, при этом сначала обратится с несколькими десятками (а то и сотнями) запросами к серверу баз данных (который тоже должен работать). После обработки PHP выдает Web-серверу код в формате HTML. А Web-сервер выдаст его браузеру. А браузер преобразует HTML в человеко-читаемую форму и мы увидим эту страницу.

2. Возможно использование и различных "объектов", как на серверной стороне, так и у клиента. Например, для просмотра DWF может использоваться специальный объект, карты можно смотреть и много чего. Замечательная фирма CadSoftTools предлагает Web CAD SDK – ASP.NET контрол для визуализации DWG и CAD чертежей на страницах Internet. Только для визуализации! Да еще под ASP.NET. Найдите-ка такой сервер - Вам ведь хочется бесплатный?

3. В Интернете все устроено так, чтобы на страницах сайтов не было ничего, что бы могло воздействовать на компьютер пользователя. Есть некоторые возможности (например сохранение cookies), но нельзя с Web-страницы запустить AutoCAD, да еще нарисовать что-то в нем. Это будет дырой в безопасности. Такие дыры ищут и находят, но это недосмотры программистов. Рассчитывать на такое нет смысла.

4. А почему же Autodesk не хочет (или не может) сделать "Автокад на сервере"? Думаете они меньше умеют, чем начинающий программист?
ShaggyDoc вне форума  
 
Непрочитано 09.08.2014, 20:50
#12
trir


 
Регистрация: 18.12.2010
Сообщений: 5,108


Ну, JavaScript выполняется у клиента и на нём многое можно сделать
http://www.janvas.com/XOSYSTEM/PROJE...pplication.php
http://www.chittram.com/editor.jsp
trir вне форума  
 
Непрочитано 09.08.2014, 20:50
#13
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,499


вот поэтому и предложил хранить уже сгенерированный набор файлов на сервере, сейчас стоимость файлового пространства хостинга невелика.. а autocad - свою работу сделал и вообще больше не нужен. И задача разбивается на две части - знакомая автору работа с autocad через lisp и вэб-технологии, которые можно заказать и на стороне.
Сергей812 вне форума  
 
Непрочитано 09.08.2014, 21:41
#14
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


Цитата:
Сообщение от SASH24 Посмотреть сообщение
не очень понятно)
Вспомнил еще - и пяти лет не прошло как я уже такой пример показывал, как из web формы заполнить БД - пол дня чтения любого справочника/самоучителя по php.
з.ы. а нет таки пять лет уже прошло...
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 10.08.2014, 06:19
#15
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Ну, JavaScript выполняется у клиента и на нём многое можно сделать
Да, на клиенте и сейчас наработали много библиотек, в основном визуального плана. Они могут делать многое, но не всё. При этом всгда защищается клиентская машина. Все скрипты ориентированы на работу с сервером. Т.е. когда мы пишем на форуме, скрипты форума помещают наши творения в базу данных на сервере и потом демонстрируют. Но им не положено управлять машиной клиента.

Цитата:
я уже такой пример показывал, как из web формы заполнить БД
Конечно, WEB-формы и предназначены для заполнения БД на сервере. Но в примере-то:
Цитата:
на той-же машине где и sql сервер запускаеться autocad c запущенным лиспом cadtoweb
Это можно сделать для пробы на локальной машине с локальным сервером. Здесь можно себе все права назначить. А откуда Автокад в "настоящем" Интернете возьмется, да с правами доступа к нему. Можно из формы отправить данные на удаленный сервер. Это мы и делаем, заполняя их на странице. Можно попытаться сделать "SQL-инъекцию", набрав в строке браузера хитрый запрос. Можно даже пытаться чего-то напакостить на этом форуме. Но все эти запросы отслеживаются, проверяются на разрешенность выполнения. Например, нельзя добавить или удалить пользователя, минуя штатные скрипты.

Цитата:
хранить уже сгенерированный набор файлов на сервере
Хранить - пожалуйста. Но загрузить файлы на сервер можно только разрешенными средствами, а не любыми, которые придумает пользователь.

Цитата:
вэб-технологии, которые можно заказать и на стороне
"На стороне" - это не у пацанов из "вэб-студий". Это надо наподобие Google нанять (или купить). Вот у них реализованы офисные программы в Интернете. В Docs можно вполне комфортно работать с документами, причем коллективно. Но все программы находятся на серверах, которые обладают громадными вычислительными ресурсами, и все данные там же хранятся. К себе их можно только сознательно скачать средствами того же сервера.

Вот Аутодеск этого себе позволить не может, хотя у него конечно есть желание сделать "только сетевой" Автокад, чтобы гарантированно получать опалату.
ShaggyDoc вне форума  
 
Непрочитано 10.08.2014, 09:37
#16
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,499


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
"На стороне" - это не у пацанов из "вэб-студий". Это надо наподобие Google нанять (или купить).
Чтобы по набору входных данных сгенерировать постоянный или временный линк на скачивание готового подходящего файла *.dwg из уже закаченного на хостинг (и не пользователем, а автором) ? Просто из топик-стартера непонятно - что именно надо, сколько вариантов и какого объемы файлов получаться. У нас стесняются сказать, что именно хотят (видимо, боятся за свои идеи), и при этом не способны/не хотят хотя бы достаточно формализовано дать исходные данные.
Сергей812 вне форума  
 
Непрочитано 10.08.2014, 12:18
#17
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
А откуда Автокад в "настоящем" Интернете возьмется, да с правами доступа к нему.
А зачем ему браться в настоящем интернете?? Тот-же пример (он конечно демонстрационный, но все же) можно на любой машине имеющий выход в интернет настроить источник данных к "настоящей" БД и создать виртуальный диск ссылающийся на ftp в "настоящем" интернете - причем БД и ftp могут находиться в разных местах планеты. То есть в лиспе мы можем не символа не менять.
з.ы. тот пример я как раз и показывал из расчета того, что php и mysql есть на большинстве виртуальных серверов по 500 руб. в год.
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 10.08.2014, 16:08
#18
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
можно на любой машине имеющий выход в интернет настроить источник данных к "настоящей" БД
Не так-то просто. К "настоящей" БД нет доступа с "любой" машины, какими-то своими программными средствами. У БД создаются пользователи со своимим правами. Обычно пользователь является WEB-сервер в лице какого-то скрипта. Т.е. к базе данных форума DWG.RU возможен доступ только из скрипта форума, даже если кто-то знает имя БД и её структуру.

Администраторы БД могут иметь доступ со своих машин своими программами - "менеджерами" БД. Но только если они сами владельцы сервера или владелец предоставил такую привилегию за особые заслуги.

Да, PHP и mysql есть на большинстве хостингов, даже на бесплатных. Но доступ к БД предоставляется арендаторам только через WEB-интерфейс, например через phpMyAdmin и парольный вход. Да и права при этом все равно не полные.

Т.е. любая идея с "WEB-приложением" должна основываться на знании всех нюансов конкретного хостинга и наличии серверных программ для реализации. Ну, разумеется простейшие вещи наподобии "онлайн" калькуляторов чего-либо можно реализовать. Это фактически баловство, но и для его реализации надо иметь на хостинге систему управления контентом (CMS).
ShaggyDoc вне форума  
 
Непрочитано 10.08.2014, 16:39
#19
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
Но доступ к БД предоставляется арендаторам только через WEB-интерфейс, например через phpMyAdmin и парольный вход. Да и права при этом все равно не полные.
Хреновые у Вас хостеры какие-то, все которые мне попадались - без проблем пускают к выделенному куску (то есть полные права на соответствующее количество БД) через соответствующие порты (3306 в случае MySql), после звонка в техподержку (только одни, по моему, письмо попросили - электронное с указанием конкретных баз к котороым потребуется доступ). Более того, на "500 рублевых" виртуальных машинках, как правило, стоит "порог" на ресурсы скрипта (то есть если скрипт суммарно в сутки, или единовременно запрашивает\тратит свыше определенного количества ресурсов - то такой скриптик будет работать через раз, а хостер предложит Вам другой тариф), но на использование СУБД это, в большинстве случаев, распространяется с гораздо более большим ресурсом - по понятным техническим причинам - что соответственно намекает на приемущественное большее использование СУБД, для выполнения процедур расчетов и пр., а не пыхи. Все современные СУБД (в том числе и MySql) поддерживают очень гибкую настройку прав доступа - так что технически дать прямой доступ к "своей" БД и только к ней - никаких проблем нет, "юридических" мне тоже не попадались (а если б и попались, то я бы просто отказался от их услуг - т.к. (предложил другого тому, кому разрабатываю) проблем с выбором хостера - я не вижу).
з.ы. доплату за "прямой доступ" никто не просил - это точно.
з.ы.ы чтоб не разводить рекламу ссылки приводить не буду, но на трех первых сайтах найденых по слову "хостинг" условия организации прямого доступа к БД (кстати везде попался именно MySql) написаны в FAQ (первым - через письмо к ним, вторые настройкой ssh, третьи просто включаешь сам в панели).
__________________
Когда в руках молоток все вокруг кажется гвоздями.

Последний раз редактировалось Дима_, 10.08.2014 в 16:58.
Дима_ вне форума  
 
Непрочитано 10.08.2014, 18:31
#20
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
условия организации прямого доступа к БД
Условия для пользователя хостинга, а не для анонимных посетителей.
ShaggyDoc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как сделать интернет- приложение



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ObjectARX. Расчленение и удаление proxy-объектов Profan Готовые программы 293 08.04.2024 09:37
Проблема с чисткой чертежа AntonFox AutoCAD 33 20.02.2013 13:00
Проектирование участка водопровода кольцевой сети -200м, запросили сделать расчет всей кольцевой сети, как это сделать? kess35 Водоснабжение и водоотведение 16 07.10.2011 22:34
Как сделать узел вращения? remenikomer Машиностроение 28 25.07.2011 11:39
Как сделать одной из граней SOLID поверхность Polygon mesh kukuikar AutoCAD 1 16.05.2007 07:58