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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Доступ к существующей базе деталей

Доступ к существующей базе деталей

Ответ
Поиск в этой теме
Непрочитано 05.06.2009, 22:01 #1
Доступ к существующей базе деталей
Flash51
 
ГКП
 
Подольск
Регистрация: 18.01.2009
Сообщений: 18

Всем привет, нелавно написал программки для отрисовки 3D моделей, а затем программку для вставки этих моделей через макросы. Но при хранении всех блоков в одном файле его весь сильно повышается, что влияет на скорость работы. Подскажите, пожалуйста, где лучше хранить блоки: в одном файле или в разных. И как обеспечить быстрый доступ к блокам, если хранить отдельно?
Просмотров: 3493
 
Непрочитано 05.06.2009, 23:55
#2
T-Yoke

Артиллерист - вертолётчик. Дипломированный инженер-механик. Technologist
 
Регистрация: 29.11.2004
Где-то около Москвы
Сообщений: 16,831
Отправить сообщение для T-Yoke с помощью Skype™


Цитата:
Сообщение от Flash51 Посмотреть сообщение
Всем привет, нелавно написал программки для отрисовки 3D моделей, а затем программку для вставки этих моделей через макросы. Но при хранении всех блоков в одном файле его весь сильно повышается, что влияет на скорость работы. Подскажите, пожалуйста, где лучше хранить блоки: в одном файле или в разных. И как обеспечить быстрый доступ к блокам, если хранить отдельно?
Так если это файл БАЗЫ ДАННЫХ, а не чертеж со вставленными блоками, то он по определению большой бывает. Вопрос в правильной организации доступа и структуре самого файла.
__________________
«Артиллерия не токмо грохот, но и наука!» Пётр I
T-Yoke вне форума  
 
Непрочитано 06.06.2009, 01:04
#3
Кулик Алексей aka kpblc
Moderator

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


Flash51, решение зависит от методики вставки блока. Можно написать собственную программу, которая будет импортировать только определенный блок из файла dwg, и в макросе вызывать именно ее. Можно написать свою программу, которая будет читать описание блока из файла базы данных (имею в виду MS SQL Server / Firebird / Oracle etc) и на основе этого создавать блок в текущем файле.
Ну или использовать палитры инструментов, если есть такая возможность. А если нету - DesignCenter
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 06.06.2009, 10:25
#4
Flash51

ГКП
 
Регистрация: 18.01.2009
Подольск
Сообщений: 18
<phrase 1= Отправить сообщение для Flash51 с помощью Skype™


А есть ли на сайте пример программы по вставке блока из отдельного файла? У меня сейчас написана программа для вставки блока через макросы, при этом все созданные блоки хранятся в этом же файле. Файл весит при этом чуть меньше 10 МВ.
Flash51 вне форума  
 
Непрочитано 11.06.2009, 12:39
#5
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,194


Посмотри тут
http://www.caduser.ru/forum/index.ph...5#message70445
kp+ вне форума  
 
Непрочитано 11.06.2009, 20:28
#6
Supermax

Руководитель фирмы
 
Регистрация: 28.03.2007
Москва
Сообщений: 1,831
Отправить сообщение для Supermax с помощью Skype™


У меня модели весят от 100мб. и более. И все шустро летает, благодаря внешним ссылкам. Парадокс, графики полно, а такое впечатление, что ее вовсе нет. Я в главном файле вообще ничего кроме ссылок не держу.
Да, можно отдельные, библиотечные файлы держать, а можно все в модели хранить. Но если все хранить в модели - 50мб предел. А так, можно строить до бесконечности.
Вставлять блоки можно если их не много и в отдельный файл, который потом подгружать как внешнюю ссылку.

Ты попробуй и сам поймешь, что без ссылок просто невозможно работать.
А вот когда поймешь, то прогу писать надо будет совсем по другому.

Есть модель - файл набитый внешними ссылками. Вставляем блок в него, ориентируем и отправляем прогой в другой файл с оригинальными параметрами вставки. Этот другой файл либо уже подгружен, либо его прога должна автоматически создать, перекинуть в него блок и подгрузить к модели.

Вот такая нужна прога (мое личное мнение).

Тут написано не правильно
http://www.caduser.ru/forum/index.ph...5#message70445

Если весь лисп оформить как функцию и запустить ее, то можно открывать и закрывать файлы, переходить в них и уходить обратно.

Последний раз редактировалось Supermax, 11.06.2009 в 20:34.
Supermax вне форума  
 
Непрочитано 11.06.2009, 22:29
#7
VVA

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


Здесь еще посмотри
Нужна функция импорта блока из файла
Копирование блоков из чертежа в чертеж
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 27.06.2013, 00:14
#8
Flash51

ГКП
 
Регистрация: 18.01.2009
Подольск
Сообщений: 18
<phrase 1= Отправить сообщение для Flash51 с помощью Skype™


Подскажите, почему не работает (cond ((= PN (or "0.6" "1.0" "1.6" "2.5" "4.0"))
......)?
Flash51 вне форума  
 
Непрочитано 27.06.2013, 00:17
#9
Кулик Алексей aka kpblc
Moderator

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


Потому что одно из двух - либо pn должно быть t, либо вместо = надо ставить member и менять условие проверки
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 27.06.2013, 00:19
#10
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Подумай что возвращает
Код:
[Выделить все]
 (or "0.6" "1.0" "1.6" "2.5" "4.0")
и поймёшь почему не работает.
Александр Ривилис вне форума  
 
Автор темы   Непрочитано 03.07.2013, 15:51
#11
Flash51

ГКП
 
Регистрация: 18.01.2009
Подольск
Сообщений: 18
<phrase 1= Отправить сообщение для Flash51 с помощью Skype™


Если я вас правильно понял, то or возвращает либо t либо nill.
Переделаю на (cond (or (= PN "0.6") (= PN "1.0") (= PN "1.6") (= PN "2.5") (= PN "4.0"))...)
Flash51 вне форума  
 
Непрочитано 03.07.2013, 17:45
#12
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от Flash51 Посмотреть сообщение
Переделаю
лучше обратись с профессиональному программисту...
gomer вне форума  
 
Автор темы   Непрочитано 03.07.2013, 20:20
#13
Flash51

ГКП
 
Регистрация: 18.01.2009
Подольск
Сообщений: 18
<phrase 1= Отправить сообщение для Flash51 с помощью Skype™


Как объединить условия в cond?

Последний раз редактировалось Flash51, 03.07.2013 в 20:38.
Flash51 вне форума  
 
Непрочитано 03.07.2013, 20:41
#14
Кулик Алексей aka kpblc
Moderator

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


Цитата:
Сообщение от Flash51 Посмотреть сообщение
Как объединить условия в cond?
http://forum.dwg.ru/showthread.php?t=22894
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Доступ к существующей базе деталей



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить доступ к таблице Access Cleper Программирование 22 02.02.2016 07:05
Сборка «3D» деталей в среде АВТОКАД 6 Геннадий+ AutoCAD 1 24.03.2009 16:52
Кто знаком с системой Vault Олег Вещий Прочее. Программное обеспечение 39 14.11.2008 22:43
Программный продукт по проект-ю сборных ЖБК на базе Автокад? pichkir Прочее. Программное обеспечение 1 16.06.2006 21:16