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

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

База данных площадей помещений с привязкой к замкн. контуру.

Ответ
Поиск в этой теме
Непрочитано 09.08.2005, 11:43 #1
База данных площадей помещений с привязкой к замкн. контуру.
elena_din
 
Регистрация: 23.04.2005
Сообщений: 26

Здравствуйте!
Как сделать, чтобы значение площади замкнутого контура помещений (за вычетом колонн внутри) автоматически проставлялось внутри этого помещения с нумерацией этого помещения (экспликация), затем эти данные сводились в сводную таблицу в автокаде, а потом чтобы с ней можно было работать в аналитической базе данных (Excel, Access).
А чтобы при изменении контура, вся связка циферных данных обновлялась автоматически.
Да, видела лисп area в downlouds. - он не вычитает колонны
Просмотров: 9615
 
Непрочитано 09.08.2005, 12:01
#2
Кулик Алексей aka kpblc
Moderator

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


А работа часом не в ADT? Там же можно сделать Properties Definition для стиля Area, на котором и зашарашить все что хочется. И спецификация тоже тогда проблем вызвать не должна. Кстати, насколько мне известно, в 2005-м ADT уже можно встроенными средствами перекидывать спецификации в XLS-файлы. Правда, как это дело повесить на автомат, я не знаю.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 09.08.2005, 15:11
#3
elena_din


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


Ситуация такая, в помещениях есть колонны.
Нужна площадь пола за вычетом колонн, чтобы ее значение в метрах с 1 знаком после запятой вставлялось в акад в круг, где сверху номер помещения.
.
Затем чтобы выводилась общая площадь в виде экспликации.
А затем эта экспликация шла в Excel ,.
И при изменении контура, менялась бы площадь в акаде - экспликации - Excel.

А что такое ADT?
elena_din вне форума  
 
Непрочитано 09.08.2005, 15:58
#4
Кулик Алексей aka kpblc
Moderator

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


ADT = Architectural Desktop. Правда, как там дела с колоннами, не в курсе. Но думаю решаемо. Теперь я лучше послушаю, что умные люди скажут.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 09.08.2005, 17:36
#5
Alan

CAD
 
Регистрация: 28.08.2003
Киев
Сообщений: 1,835
<phrase 1=


>elena_din
Честно сказать Вы задали сразу несколько задач.
Я решал это в программе ПАРКС в несколько приемов:
1.Команда Маркировка помещений, где Вы указываете: само помещение, можно из участков, добавляемые и удаляемые площади. Например, колонны можно указать один раз и сказать сколько.
2.Команда Экспликация помещений составляется требуемая по ГОСТ таблица.
Вывод значений атрибутов блоков в Excel обсуждалось неоднократно, поищите Поиском.
Цитата:
при изменении контура, менялась бы площадь в акаде - экспликации - Excel.
Это идеальный случай. Я этого не делал, наверное нужны реакторы. Более опытные коллеги нам помогут.
Alan вне форума  
 
Автор темы   Непрочитано 10.08.2005, 10:18
#6
elena_din


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


Спасибо за ответы.
А в Autocad возможно решить эти задачи или обязательно преходить в другие программы?
elena_din вне форума  
 
Непрочитано 10.08.2005, 10:42
#7
Vook


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


Если автокад 2005 и выше, то для этого можно воспользоваться полями (field). Естественно, колонны никто автоматически вычитать вам не будет.

Помещение обводится полилинией, в атрибут выводится значение поля, связанное с площадью этой полилинии. Это же значение можно занести в экспликацию помещений.
Vook вне форума  
 
Непрочитано 10.08.2005, 10:58
#8
Perezz!!
Moderator

архитектор
 
Регистрация: 21.08.2003
Москва
Сообщений: 3,587


Мне кажется, мы настолько хотим упростить себе работу, что в идеале за нас работает один только компьютер. Наверное, более логично всё-таки размышлять о какой-то разумной середине.
Perezz!! вне форума  
 
Автор темы   Непрочитано 10.08.2005, 11:50
#9
elena_din


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


цитата: "в атрибут выводится значение поля, связанное с площадью этой полилинии.."

А КАК это сделать - ищу в форуме, не могу найти..........
Как сделать атрибут и ввести в него значение поля, связанное с полилинией?

А по-поводу упростить работу - этого всегда хочется
elena_din вне форума  
 
Непрочитано 10.08.2005, 12:06
#10
che

Прораб
 
Регистрация: 16.05.2005
Osh
Сообщений: 52


>elena_din

На этом же сайте:

http://dwg.ru/dwl/331

есть программка (правда без открытого кода), которая решает не все Ваши задачи, но основные ее части. Применял ее, хорошая программа.
che вне форума  
 
Непрочитано 10.08.2005, 12:39
#11
asys

архитектор
 
Регистрация: 10.08.2005
Ростов-на-Дону
Сообщений: 5,283


Хочу поделиться свомии наработками:
я обвел комнаты поллилиниями (не печатаемыми) и там где есть колонна, см. рисунок, далее сделал table куда вставил field - area полиинии с conversion factorom поля 0,000001 (чтобы площадь отображалась в м кв.) и drawing units - 0.0 (чтобы площадь отображалась с одной цифрой после запятой.) И так для всех комнат, правда в Exel не носил, но при передвижке стен (полилинию тоже тянем) field-сы сами площадь отслеживают. (да AutoCAD 2006-ой)
[ATTACH]1123663189.jpg[/ATTACH]
asys вне форума  
 
Непрочитано 10.08.2005, 17:37
#12
Vook


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


Asys


Именно это я и имел ввиду...

А зачем было вершины растаскивать?
Vook вне форума  
 
Автор темы   Непрочитано 10.08.2005, 18:01
#13
elena_din


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


Спасибо всем ОГРОМНОЕ за ответы
Проблема в том, что есть помещение, площадью ,например 1500м, и в нем около 50 колонн, каждую так обвести не получится, а конечную площадь за вычетом колонн надо знать точно.
И таких помещений МНОГО.
По поводу DWL331 я ее скачала, спасибо, Хорошая программа
Но не решает проблему с колоннами.
ХОтелось бы, чтобы она работала как штриховка, которая колонны огибает.
В остальном - почти то, что нужно.
Понять бы только как с этой посчитанной площадью сделать атрибут!
elena_din вне форума  
 
Непрочитано 11.08.2005, 10:06
#14
asys

архитектор
 
Регистрация: 10.08.2005
Ростов-на-Дону
Сообщений: 5,283


> Vook
Просто для наглядности действий
>elena_din
по адресу: webfile.ru/452438 в течение 7 дней до 09:58 18.08.2005
я положил архив с программой которую нашел где-то на dwg.ru или на autocad.ru я уже не помню. Щелкаете внутри помещения точку - строится штриховка показывающая область измеряемую и потом извлекается значение площади. См. картинку, к сожелению если на приведенной картинке отключить оси, то колонна как островок не включаемый в область штриховки будет проигнорирован.
[ATTACH]1123740417.jpg[/ATTACH]
asys вне форума  
 
Непрочитано 11.08.2005, 13:17
#15
che

Прораб
 
Регистрация: 16.05.2005
Osh
Сообщений: 52


>elena_din

Применяя dwl331, можно воспользоваться командой "_bpoly", конечно, предварительно закрыв слои с осями, сантехникой, фурой и пр. Есть также множество частных лисп программ, похожих на "_bpoly", но с доработками. Например, надо начертить одну полилинию, но на чертеже помещение перерезано множеством линий, "_bpoly" дает много полилиний. Есть лисп, создающий одну полилинию по нескольким замкнутым контурам. Работает примерно как union с регионами. Если интересует, могу выслать.
che вне форума  
 
Непрочитано 12.08.2005, 08:41
#16
Dara

Arch
 
Регистрация: 21.06.2005
Almaty
Сообщений: 98


Привет.
Я не могу объяснять грамотно.
Береш контур помещ. и колонны. Переводиш их с помощью Region в ......... потом вырезаеш с помощью subtract периметр помещ. от колонны.
Это больше поимут те кто в 3Д работает.
__________________
Интересуюсь всем что связано с Архитектурой
Dara вне форума  
 
Автор темы   Непрочитано 15.08.2005, 11:22
#17
elena_din


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


Спасибо большое!
Получается, что для целей определения площади мне больше подходит программа AREA, которая суммируеплощади из кусочков.
Хотелось бы только узнать как в ней изменить количество знаков после запятой на 1.
А вот привязка к контуру классная в dwl331.
Хотелось бы понять как это объединить .

Т потом вставить это в
[img]
А в номере комнаты чтобы отслеживался порядок по возрастанию, а нижняя цифр как раз и была бы полученной площадью c помощью AREA и привязка с помощью dwl331.
[/img]
elena_din вне форума  
 
Непрочитано 18.08.2005, 23:38
#18
ApmeM

проектировщик
 
Регистрация: 08.04.2005
пока Волгоград
Сообщений: 199


А такое вроде есть в SPDS_2.5, или может я ошибаюсь (давно перестал
пользоваться этой гадостью)
ApmeM вне форума  
 
Непрочитано 19.08.2005, 00:54
#19
Startrek

AutoCAD/AutoLISP
 
Регистрация: 27.08.2003
Seattle/USA
Сообщений: 1,133


Работает в Аутокад 2005/2006

(defun plar(/ pt pt1 pt2)
(setq pt (getpoint"\nStarting Point: "))
(setq pt1 (getpoint pt "\nNext Point: "))
(command "Pline" pt pt1 "")
(while
(setq pt2 (getpoint pt1"\nNext Point: "))
(command "pline" "" pt2 "")
(command "pedit" pt "j" pt pt2 "" "")
(setq pt1 pt2)
)
(command "pedit" pt "c" "")
(princ)
)

(defun ar5 (/ cm fd ar1 ar2 ar3 tab oba lu tpt lin wh)
(vl-load-com)

(setq cm (getvar "cmdecho"))
(setvar"cmdecho" 0)
(setq fd (getvar "fielddisplay"))
(if (/= fd 0)(setvar"fielddisplay" 0))

(setq ar1 (entsel "\nSelect Area Boundary: "))
(setq ar2 (car ar1))
(setq tab (vlax-ename->vla-object ar2))
(setq oba (vla-get-objectid tab))

(setq lu (getvar "lunits"))
(setq tpt (getpoint"\nSelect Area Text Point: "))
(cond
((= lu 2) (setq lin (strcat "%<\\AcObjProp Object(%<\\_ObjId " (rtos oba 2 0) ">%).Area \\f \"%lu6%qf1\">%")))
((= lu 4) (setq lin (strcat "%<\\AcObjProp Object(%<\\_ObjId " (rtos oba 2 0) ">%).Area \\f \"%lu2%ct4%qf1 SQ. FT.\">%")))
((= lu 5) (setq lin (strcat "%<\\AcObjProp Object(%<\\_ObjId " (rtos oba 2 0) ">%).Area \\f \"%lu5\">%")))
((= lu 3) (setq lin (strcat "%<\\AcObjProp Object(%<\\_ObjId " (rtos oba 2 0) ">%).Area \\f \"%lu2%ct4%qf1 SQ. FT.\">%")))
((= lu 1) (setq lin (strcat "%<\\AcObjProp Object(%<\\_ObjId " (rtos oba 2 0) ">%).Area \\f \"%lu1\">%")))
)
(command "mtext" tpt "w" "0" lin "")

(princ)
)

(defun c:arb (/ key)
(initget 1 "Boundary/label-area Label-area")
(setq key (getkword "\nWould you like Boundary/label-area[b] or Label-area<L>: "))
(cond
((= key "Boundary/label-area")(plar)(ar5))
((= key "Label-area")(ar5))
)
(princ)
)
Startrek вне форума  
 
Непрочитано 19.08.2005, 13:40
#20
baryshnikoff

конструктор
 
Регистрация: 03.08.2005
Екатеринбург
Сообщений: 173
<phrase 1=


А можно применить Field к площади штриховки, расположенной в отключенном слое :roll:
baryshnikoff вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > База данных площадей помещений с привязкой к замкн. контуру.

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск