Необходимо связать Автокад(Автолисп) и Вебсайт - Страница 2
Реклама i
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Необходимо связать Автокад(Автолисп) и Вебсайт

Необходимо связать Автокад(Автолисп) и Вебсайт

Ответ
Поиск в этой теме
Непрочитано 08.04.2009, 17:22
Необходимо связать Автокад(Автолисп) и Вебсайт
Sviridov
 
Регистрация: 08.04.2009
Сообщений: 9

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

Я знаю Автокад на уровне уверенного пользователя.
Я знаю Автолисп на уровне начинающего пользователя.

PS: Автокад у посетителя сайта, естественно не должен быть установлен для работы всего мероприятия.

Заранее благодарен за идеи.
Просмотров: 4899
 
Непрочитано 09.04.2009, 00:41
#21
Sleekka

-
 
Регистрация: 24.07.2005
Москва
Сообщений: 1,335


Я сойду с ума.
Т.е. если я чертежник который чертит в автокаде к примеру прямоугольники за деньги, мне люди приносят задание a и b я черчу они платят деньги. я к примеру написал лисп который сканирует задание отдает параметры в автокад, и получается чертеж. Здесь ввод параметров через бумагу, и то что все чертежники и проектировщики так работают (в текущий момент времени), это побоку...
В проекте этой темы, ввод параметров электронный и опосредованный посетители сайта автокада не касаются.
Теперь дальше... что же получается что когда я полностью автоматизировал работу своим лиспом, то теперь всю работу делают заказчики принесшие мне a и b и Автокад, я так х... с горы...
Нееет братцы кролики, я лисп написал, авторские и имущественные права на него принадлежат мне, он делает мою работу значит эту работу делаю я, с помощью лиспа...
Опять же в проекте данной темы автор написал сайт который позволяет, организовать звено в цепи между выдачей задания и выполнением его, Заказчики могут получить продукт только пройдя через информационный фильтр сделаный автором сайта и лиспа, т.е. его интеллектом т.е. через него самого, т.к. его программа это есть его интеллект воплощенный в эл. виде. За это и платятся деньги, за то что человек тратит свои силы, он их потратил на воплощение своего интеллекта в железе, а также на дальнейшую поддержку этого воплощения... Его программу выкинуть нельзя а раз нельзя значит часть денег его. Если всякие там менеджеры и юристы из автодеска этого не понимают, пусть придут ко мне я им обясню. Если вы работаете подобным засуживателем проектов то я понимаю почему вы это говорите, а если вы нормальный программист который хочет реализовывать свои проекты, я не понимаю почему вас останавливают подобные глупости... Зубов бояться - ......

Цитата:
Это вопрос уже не ко мне, а к юристам Autodesk, думаю что они обязательно ответят вам на этот вопрос (я имею в виду центральный офис), но сделают они это так путано и мудрёно, что смею вас заверить в том, что далее у вас пропадёт желание докопаться до истины.
А если взять эту подноготную шушару и отвести за ручку к тем, кто в автодеске постарше то им там сделают прилюдный секас, за то что они мешают продвижение продукта на рынке, потому что они понимают кто в этом мире и от кого зависит...
Sleekka вне форума  
 
Непрочитано 09.04.2009, 00:45
#22
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


>>Это вопрос уже не ко мне, а к юристам Autodesk, думаю что они обязательно ответят вам на этот вопрос (я имею в виду центральный офис), но сделают они это так путано и мудрёно, что смею вас заверить в том, что далее у вас пропадёт желание докопаться до истины.

нисколько не сомневаюсь в этом. но чем данная ситуация отличается от обыденного получения мной задания на проектирования и воплощения его в жизнь продуктом уважаемой фирмы? пойду сушить сухари, оказывается я вор))
zamtmn вне форума  
 
Непрочитано 09.04.2009, 00:48
#23
Sleekka

-
 
Регистрация: 24.07.2005
Москва
Сообщений: 1,335


Да может человек, хотел сделать проект, не смог и оправдывает себя тем что ему юристы автодеска запретили, тоже вариант...
Кароче я все понял, мне надо слушать юристов, потому как написанные мной приложения пока они являются полуавтоматом, то пусть я там жму кнопки и зарабатываю, а как только я дошел до полной автоматизации, мое приложение НЕ становится собственностью автодеска, НО я не могу его использовать т.к. я видетили больше в процессе не учавствую, ну чтоже отсюда 2 пути пойти в автодеск и сказать о великие и ужасные, поклониться им сколько скажут и больше никогда не писать если они мне не разрешат, или по пути Евгения Елпанова - написать свое ядро... Только я не буду до реализации проекта узнавать что мне можно а что нельзя, я сначала сделаю а автодеску если заняться нечем то пусть, серчат русский интернет на предмет того где там используется, их автокад тем, более где на сайте видно что акад используется, а узнать это можно только взломав мой код что является нарушением уже моих прав...

Последний раз редактировалось Sleekka, 09.04.2009 в 00:55.
Sleekka вне форума  
 
Непрочитано 09.04.2009, 01:11
#24
Pavel Samofalov

Еxpat
 
Регистрация: 08.01.2007
European Union
Сообщений: 1,424


Мой знакомый уже получал по башке длинной кроной, и мне совсем нет желания повторять его историю.
А так уверенно я говорю, что нельзя, потому что у меня уже возникало желание организовать нечто подобное. Я хотел организовать на сайте своего предприятия автоматизированную систему заказов на раскрой листового проката и две недели вёл переписку с компанией Autodesk, совершенно не разумея почему я не могу реализовать свои планы подобным образом. Я так и остался не с чем. А юристы не будут приходить к вам и дискутировать на тему правоведения, они пригласят вас в суд, такие они редиски.
Ещё раз повторяю, свой автокад вы можете использовать как пожелаете по вашему усмотрению, хоть нажимая на кнопки пальцами, или это за вас может делать ваша программа. И своей программой вы можете пользоваться как хотите, хотите продавайте, хотите дарите. Но у человека который использует вашу программу должен быть свой автокад, он не может на законных основаниях использовать ваш, пусть даже по средством посредника в вашей программе. Вы можете получать данные от третьего лица и использовать их для построения объекта, но автоматизация этого процесса является незаконной.
Pavel Samofalov вне форума  
 
Непрочитано 09.04.2009, 01:20
#25
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


Думаю это можно урегулировать если удаленный пользователь только пополняет базу данных и не жмет кнопку "сделать красиво и прислать мне pdf". оную кнопку жму я или моя программа по мере пополнения базы данных после отключения пользователя
zamtmn вне форума  
 
Непрочитано 09.04.2009, 01:24
#26
Sleekka

-
 
Регистрация: 24.07.2005
Москва
Сообщений: 1,335


2Pavel Samofalov
Такс я кажется разобрался:
И теперь я с вами полностью согласен.
-Значит я хотю сделать проект, класса полная автоматизация через веб, на что автодеск мне говорит что низя.
-Я говорю: парни, ну проект то креативный и пытаюсь доказать что можно.
-Они мне говорят, (про себя думают у нас то ... длиннее и нас много) ты все говоришь правильно, но мы тебе говорим, что низя, (также думают про себя: раз проект класса полная автоматизация через веб, то срубить бабла на нем можно больше чем просто тыкая в кнопочки, поэтому нужно часть бабла оттянуть на себя)
- Я говорю ну а сколько нужно чтобы было можно
- Они: 20000 еуро
- я шлю их на юх. и иду писать свое ядро и делаю свой проект.

Вроде разобрался. Спасибо.
Sleekka вне форума  
 
Непрочитано 09.04.2009, 02:29
#27
Pavel Samofalov

Еxpat
 
Регистрация: 08.01.2007
European Union
Сообщений: 1,424


Sleekka
В принципе всё верно, за исключением того, что они ответят на вопрос «сколько нужно чтобы было можно», примерно так: какой-то там политикой компании Autodesk не предусмотрена такая возможность и предложат обратится к ним с заявкой на разработку системы для индивидуального пользования. Но обращаться с заявкой и узнавать сколько это примерно может стоить я не стал, по тому как всё ровно я таких больших цифр не знаю.
zamtmn
По возможности такого хода я нечего сказать не могу, так как мне в голову это тогда не пришло, и соответственно вопроса такого я не задавал, но думаю что если бы и задал, то получил бы их любимый ответ – нельзя.
Pavel Samofalov вне форума  
 
Непрочитано 09.04.2009, 05:36
#28
Димас

джедай
 
Регистрация: 31.01.2005
Магадан
Сообщений: 460
<phrase 1=


to Sviridov
есть наработки по вашему вопросу)
в паре слов: без флеша/джавы сложно очень и неправильно оно так
мы используем flex как основу для гуи, и он же как чертилка выступает.

использовать автокад - действительно оооочень дорого и вряд ли кто позволит. если пярм так хотите вывод в чем-то похожем на автокад - посмотрите на библиотеки работающие с dwg файлами. Тоже дорого выйдет, - т.к. непонятно на какое количество пользователей лицензироваться должно, но все же дешевле чем лицензия автокада.

предлагаю другой вариант - дешево и сердито)
подготавливаете заранее сгеренированные картинки для всех возможных вариантов. предполагаю будет их более чем 100 штук)
затем просто на основе выбора польщователя выдаете ему нужную картинку.
думаю единственно реально работающий вариант в вашем случае.
__________________
тут была подпись(
Димас вне форума  
 
Непрочитано 09.04.2009, 06:16
#29
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Как бы автор темы не выкручивал мозги в надежде уйти от обсуждения легитимности, налицо явная попытка обойти закон. Для этого достаточно еще раз посмотреть на название темы:
Необходимо связать Автокад(Автолисп) и Вебсайт
Речь идет не о связи пользователя с посредником, а о связи пользоватенля через WEB-интерфейс непосредственно с удаленным AutoCAD'ом. В противном случае хватило бы электронной почты.
Profan вне форума  
 
Непрочитано 09.04.2009, 17:20
#30
Дима_

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


Отойдя от юр. проблем вот реализация нечто подобного:
создается (MySQL) таблица "box" в БД "cad" с параметрами:
mysql> show columns from box;
+-------+---------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| x1 | double | YES | | NULL | |
| x2 | double | YES | | NULL | |
| y1 | double | YES | | NULL | |
| y2 | double | YES | | NULL | |
| jpg | text | YES | | NULL | |
+-------+---------+------+-----+---------+----------------+
6 rows in set (0.00 sec)

пользователю "tester" разрешаються права на эту таблицу,
на той-же машине где и sql сервер запускаеться autocad c запущенным лиспом cadtoweb, который через каждые 5 секунд сканирует таблицу и если видит строку с незаполненным полем jpg создает прямоугольник по точкам (x1,y1)-(x2,y2) и делает jpeg экрана, после чего заполняет поле jpg именем файла. Если в лиспе разбираешься - то проблем адаптировать процедуру draw под свои параметры - проблем составить не должно. Соответственно web приложение должно заполнять поля параметров таблицы (x1,x2,y1,y2) и ждать пока autocad не заполнит поле jpg. После чего может работать с этим файлом (выводить на экран либо печать и пр.)
Код:
[Выделить все]
(vl-load-com)
(defun c:cadtoweb ( / box tmp)
(while T
(setq box (vl-catch-all-apply 'getsql (list nil "tester" nil "cad" "select * from box where isnull(jpg)")))
(if (= (type box) 'vl-catch-all-apply-error) (setq box nil) (setq box (cdr box)))
(if box 
(mapcar '(lambda (param) (apply 'draw param)) box)
);end of if
(setq tmp (getvar "cdate")) (while (> (+ tmp 0.000005) (getvar "cdate")))
);end of while
);end of cadtoweb

(defun draw (id x1 x2 y1 y2 jpg)
(command "_erase" "_all" "") 
(command "_rectang" "_none" (list x1 y1) "_none" (list x2 y2))
(command "_zoom" "_e")
(command "_jpgout" (rtos (car param)) "")
(vl-catch-all-apply 'runsql (list nil "tester" nil "cad" (strcat
"update box set jpg='" (rtos id) ".jpg' where id=" (rtos id)
)));end of vl-catch...
);end of draw

;запускает sql инструкцию на sql сервере, по умолчанию использует драйвер MySQL ODBC 3.51 Driver.
использует переменные connectiontimeout и commandtimeout
;формат запуска (RUNSQL driver user password database sql)
;напрмер (runsql nil "gost" nil "test" "drop table test")
(defun runsql (driver user password database sql / connect)
(if (not driver) (setq driver "{MySQL ODBC 3.51 Driver}"))
(setq connect (vlax-create-object "adodb.connection"))
(if connectiontimeout (vlax-put-property connect "connectiontimeout" connectiontimeout))
(if commandtimeout (vlax-put-property connect "commandtimeout" commandtimeout))
(vlax-invoke-method connect "open" (strcat "driver=" driver) user password T)
(if database (vlax-invoke-method connect "execute" (strcat "use " database) T T))
(vlax-invoke-method connect "execute" sql T T)
(vlax-invoke-method connect "close")
(vlax-release-object connect)
);end of runsql

;Возращает "список списков" вернутых sql сервером. Обработка ошибок на совести ползователя (vl-catch)
;формат запуска (getsql driver user password database sql)
;напрмер (getsql nil "gost" nil "test" "select * from test")
(defun getsql (driver user password database sql / connect table row lst tmp ret)
(if (not driver) (setq driver "driver={MySQL ODBC 3.51 Driver}"))
(setq connect (vlax-create-object "adodb.connection"))
(if connectiontimeout (vlax-put-property connect "connectiontimeout" connectiontimeout))
(if commandtimeout (vlax-put-property connect "commandtimeout" commandtimeout))
(vlax-invoke-method connect "open" driver user password T)
(if database (vlax-invoke-method connect "execute" (strcat "use " database) T T))
(setq table (vlax-invoke-method connect "execute" sql T T))
(setq row (vlax-get-property (vlax-get-property table "fields") "count"))
(setq tmp 0)
(repeat row (setq lst (append lst (list
(vlax-get-property (vlax-get-property (vlax-get-property table "fields") "item" tmp) "name")))
tmp (1+ tmp))
);end of repeat
(setq ret (append ret (list lst)) lst nil)
(while (= (vlax-get-property table "eof") ':vlax-false)
(setq tmp 0)
(repeat row (setq lst (append lst (list
(vlax-variant-value (vlax-get-property (vlax-get-property (vlax-get-property table "fields") "item" tmp) 	"value"))))
tmp (1+ tmp))
);end of repeat
(vlax-invoke-method table "movenext")
(setq ret (append ret (list lst)) lst nil)
);end of while
(vlax-invoke-method connect "close")
(vlax-release-object connect)
ret
);end of getsql
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 13.04.2009, 08:22
#31
Димас

джедай
 
Регистрация: 31.01.2005
Магадан
Сообщений: 460
<phrase 1=


а почему б тогда не попробовать перегонять в хмл?
2000 автокад это штатно умеет. если версия не принципиальна, можно им воспользоваться

ну и флеш морду на веб сайте для отображения с хмл
__________________
тут была подпись(
Димас вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Необходимо связать Автокад(Автолисп) и Вебсайт



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как связать размеры деталей в сборке ? Grafandin Другие CAD системы 3 20.02.2008 08:29
Необходимо сформулировать служебное назначение детали Azzazin Машиностроение 27 23.12.2007 12:54