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

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Таблица в 2009 Автокаде

Таблица в 2009 Автокаде

Ответ
Поиск в этой теме
Непрочитано 30.07.2008, 20:36 #1
Таблица в 2009 Автокаде
bananillo
 
честный инженер
 
moscow city
Регистрация: 04.06.2007
Сообщений: 116

Друг попросил выложить его творение на форум, нужна помощь с тем чтобы масса стержней выбиралась по диаметру стержня, может кто то может написать такую програмку или знает как это сделать проще?

Вложения
Тип файла: dwg
DWG 2007
таблица.dwg (126.8 Кб, 689 просмотров)

Просмотров: 3680
 
Непрочитано 30.07.2008, 23:13
#2
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


Делать было нечего, дело было вечером... Так что, строго не судите, ксли что не так.
Если не будете менять расположение столбцов, то все будет ок.
Еще, проверок я мало учел. Завтра еще посмотрю.
Итоговые значения заносятся в дополнительные строчки в конце таблицы. И считает все возможные диаметры.
Вложения
Тип файла: dvb Project_Tabl.dvb (48.0 Кб, 100 просмотров)
Vildar вне форума  
 
Непрочитано 31.07.2008, 00:02
#3
VVA

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


bananillo, Посмотри эту тему Как сосчитать сумму цифр из отдельных мтекстов (и лисп для подсчета спецификаций). Последняя сборка в #449
Правда не работает с таблицами, зато чситает прокат и подбивает по диаметрам
Цитата:
============= ИТОГ РАБОТЫ ==============

Класс : Прокат СТ3СП
ГОСТ 8509-93
Уголок 75Х75Х6 - 75.79 кг.
-------------------------------------------------
ГОСТ 30245-03
Профиль гнутый 50Х25Х2 - 21.5 кг.
-------------------------------------------------
ГОСТ 8239-89
Двутавр 20 - 231.0 кг.
-------------------------------------------------
Класс : Арматура АС1
ГОСТ 5781-82
Арматура d= 8 - 4.4 кг.
-------------------------------------------------
Класс : Арматура А500С
ГОСТ 5781-82
Арматура d= 18 - 22.0 кг.
-------------------------------------------------
Изображения
Тип файла: gif SPEC5D.gif (63.3 Кб, 225 просмотров)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 31.07.2008, 01:31
#4
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Чтобы работало с таблицами.... Может, взять идею отсюда?
Vova вне форума  
 
Непрочитано 31.07.2008, 02:39
#5
wetr

инженер
 
Регистрация: 09.08.2006
Владивосток
Сообщений: 1,537
<phrase 1= Отправить сообщение для wetr с помощью Skype™


А еще можно использовать Vetcad. Он формирует ведомость расхода стали на "ура!"
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14)
wetr вне форума  
 
Непрочитано 31.07.2008, 09:27
#6
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


Конкуренция однако
Еще забыл про класс арматуры.
Вот с учетом разных класов.

PS: Я скромно рассчитывал, что спецы посмотрят мое творение. Выскажут констр. критику. А то я аж через создание нового класса и коллекции забульбенил. Можно ведь проще. Но я не умею.
Вложения
Тип файла: dvb Project_Tabl.dvb (48.0 Кб, 81 просмотров)
Vildar вне форума  
 
Автор темы   Непрочитано 01.08.2008, 00:06
#7
bananillo

честный инженер
 
Регистрация: 04.06.2007
moscow city
Сообщений: 116
<phrase 1=


Цитата:
Сообщение от Vildar Посмотреть сообщение
Конкуренция однако
Еще забыл про класс арматуры.
Вот с учетом разных класов.

PS: Я скромно рассчитывал, что спецы посмотрят мое творение. Выскажут констр. критику. А то я аж через создание нового класса и коллекции забульбенил. Можно ведь проще. Но я не умею.
большое спасибо!!!!А не могли бы Вы сделать , так чтоб в конечном результате,сортировалась арматура по классу и диаметру,и считалась сумма

арматуры A I,сумма арматуры AIII, общая сумма арматуры.
bananillo вне форума  
 
Непрочитано 01.08.2008, 08:07
#8
Кулик Алексей aka kpblc
Moderator

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


Vildar, ты попал
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 01.08.2008, 13:38
#9
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


Напрегся, и вылезло. Воняет сильно
Только классы арматуры (при записи итоговой суммы) не сортируются. Надо?
Там я в начале описал некоторые предупреждения. Ты вообще шаришь в VBA?
Главный смысл в том, что я "простой инженер". И уже раскаиваюсь, что взялся тебе помогать. Несправляюсь.
Для сортировки использую ЛистВиевер. А он собака, не везде работает. Версия VBA играет роль. Если 6.5 то, должно фурычить.
Вот. Ну и еще стили не проверяются. Берется все как есть в файле, т.е. текущие настройки.
Еще что? Если будут ошибки вылезать, ты пиши, постараюсь исправить. И мне бы пригодилось.
А ты че тут, только по ночам лазишь? Просто реакцию долго ждать

Offtop: Кулик Алексей aka kpblc, Сэнсэй лучше не смотрите этот файл, стошнит , а мне позор!
Над Вашим заданием потею. Уже пришел к одному выводу. Важна организация, организация и еще раз организация, у себя в голове в первую очередь. Конкретней, сейчас ссылки разгребаю. Лихо придумано (ссылка на ссылку в ссылке, а в ссылке еще всякая бяка может быть ).
Постараюсь выдержать единый стиль и логику (проблемы с ней).
Вложения
Тип файла: dvb Project_Tabl.dvb (75.0 Кб, 71 просмотров)
Vildar вне форума  
 
Непрочитано 01.08.2008, 14:41
#10
Кулик Алексей aka kpblc
Moderator

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


Во-первых, меня один
Во-вторых, из меня сенсей по VBA примерно как из слона балерина. Поэтому сугубо ИМХО (по последнему коду):
1. Можно попробовать не создавать объект класса, а сделать нечто наподобие:
Код:
[Выделить все]
Type typSteel
  iDiameter As Integer
  dWeight As Double
  sClass As String
End Type
Потом объявить переменную как
Код:
[Выделить все]
Dim objArm as typSteel
и попробовать работать с ней. Теоретически решение будет менее ресурсоемкое.
Если честно, то код просмотрел только, и на больше времени нет
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 04.08.2008, 15:35
#11
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


С обычным методом сортировки.

Кулик Алексей aka kpblc, наверно можно. У меня не получилось. ObjArm в коллекцию не добавляется. Какая-то ошибка. Использовать массивы, вместо коллекции, тоже не вышло.
Вложения
Тип файла: dvb Project_Table.dvb (60.0 Кб, 65 просмотров)
Vildar вне форума  
 
Автор темы   Непрочитано 06.08.2008, 22:50
#12
bananillo

честный инженер
 
Регистрация: 04.06.2007
moscow city
Сообщений: 116
<phrase 1=


На самом деле это не моя идея с табличкой а друга. Он передаёт огромное спасибо Vildar ему в табличке всё нравиться. Я пока табличку опробывал но думаю там всё здорово. А с ответами торможу потомучто на работе инета нет(.
bananillo вне форума  
 
Непрочитано 06.08.2008, 23:59
#13
Кулик Алексей aka kpblc
Moderator

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


Vildar, а при таком подходе коллекция не прокатит. Тут надо делать массив обычный и работать с ним. По здравому размышлению понял, что ресурсоемкость что одного, что второго вариантов будет как минимум сопоставима.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 07.08.2008, 09:30
#14
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


Цитата:
Сообщение от bananillo Посмотреть сообщение
На самом деле это не моя идея с табличкой а друга. Он передаёт огромное спасибо Vildar ему в табличке всё нравиться. Я пока табличку опробывал но думаю там всё здорово. А с ответами торможу потомучто на работе инета нет(.
Спасибо, приятно слышать.
По хорошему, спецификация арматуры, да и всего чего угодно на чертеже, должна считаться автоматом, ну и рисоваться ессно. Он ее в ручную считает и рисует? Советую сделать автоматизацию.
И делать эту автоматизацию лучше своими руками, чтобы знать все "причинно-следственные связи". На VBA (начал на лиспе, не получилось), "простомй инженер", где-то за месяц может научиться и сделать такую прожку (вернее макрос). У меня так получилось.
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Vildar, а при таком подходе коллекция не прокатит. Тут надо делать массив обычный и работать с ним. По здравому размышлению понял, что ресурсоемкость что одного, что второго вариантов будет как минимум сопоставима.
Я знаю про коллекции что, в них можно хранить любой тип данных. Запрета на собственный тип, "type", нигде не находил.
Про ресурсоемкость отдельный вопрос. Я в нем не бум-бум. Может подскажешь, как ее проверять.
Vildar вне форума  
 
Непрочитано 07.08.2008, 09:56
#15
Кулик Алексей aka kpblc
Moderator

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


Коллекции, как я понимаю, практически требуют запуска конструктора каждого экземпляра класса. Да еще и деструктор (пускай и неявно) запускается. Теоретически это кушает время и ресурс.
Конструкция Type, насколько мне помнится, не требует и не поддерживает ни конструктора, ни деструктора (под VB, в отличие от С++). Но обработка подобных структур полностью ложится на программиста. То есть выигрыш в одной части может быть "съеден" другим разделом программы.
Где-то на vbstreets вроде мелькала информация по замерам производительности кодов, но я найти навскидку не смог
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 07.08.2008, 10:10
#16
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


Эка...??? Слова новые, неизвестные. Полезу в словарь.
Vildar вне форума  
 
Непрочитано 07.08.2008, 10:22
#17
Кулик Алексей aka kpblc
Moderator

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


Попробуй прогнать (мне сейчас 2009 не запустить) свой код, заменив коды модулей классов на следующие:
Код:
[Выделить все]
'Diametr
Option Explicit

Private fDiam As Integer
Private fMassa As Double
Private fKlassArm As String
Private fNomer As Integer

'Свойство Diam
Public Property Let Diam(ByVal Value As Integer)
   fDiam = Value
End Property

Public Property Get Diam() As Integer
   Diam = fDiam
End Property

'Свойство Massa
Public Property Let Massa(ByVal Value As Double)
   fMassa = Value
End Property

Public Property Get Massa() As Double
   Massa = fMassa
End Property

'Свойство KlassArm
Public Property Let KlassArm(ByVal Value As String)
   fKlassArm = Value
End Property

Public Property Get KlassArm() As String
   KlassArm = fKlassArm
End Property

'Свойство Nomer
Public Property Let Nomer(ByVal Value As Integer)
   fNomer = Value
End Property

Public Property Get Nomer() As Integer
   Nomer = fNomer
End Property

Public Sub Class_Initialize()
  ThisDrawing.Utility.Prompt "Создание экземпляра класса Diametr"
End Sub

Public Sub Class_Terminate()
  ThisDrawing.Utility.Prompt "Уничтожение экземпляра класса Diametr"
End Sub
Код:
[Выделить все]
'KlassArm
Option Explicit

Private fKlassArm As String
Private fMassa As Double

'Свойство KlassArm
Public Property Let KlassArm(ByVal Value As String)
   fKlassArm = Value
End Property

Public Property Get KlassArm() As String
   KlassArm = fKlassArm
End Property

'Свойство Massa
Public Property Let Massa(ByVal Value As Double)
   fMassa = Value
End Property

Public Property Get Massa() As Double
   Massa = fMassa
End Property

Public Sub Class_Initialize()
  ThisDrawing.Utility.Prompt "Создание экземпляра класса KlassArm"
End Sub

Public Sub Class_Terminate()
  ThisDrawing.Utility.Prompt "Уничтожение экземпляра класса KlassArm"
End Sub
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 07.08.2008, 11:26
#18
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Попробуй прогнать (мне сейчас 2009 не запустить) свой код, заменив коды модулей классов на следующие:
В 2008 тоже работает.
Т.е. в процедуре инициализации класса, Class_Initialize, можно прописать значения свойств создаваемого объекта, как бы значения по умолчанию. Это и есть конструктор!?
Ну а Class_Terminate, в этом макросе, выполняется в конце, после (или во время) end. Еще он вызывается при удалении объекта (set objClass = Nothing). Какой в нем смысл? Что в нем прописывать?
И как эти конструкторы/деструкторы относятся к "type"?
Ничего конкретного, пока, найти не удалось.

Можешь послать по ссылке. Или что в запросе написать.

Последний раз редактировалось Vildar, 07.08.2008 в 11:57.
Vildar вне форума  
 
Непрочитано 07.08.2008, 13:01
#19
Кулик Алексей aka kpblc
Moderator

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


Я просто в очередной раз перечитываю Шилдта и Страуструпа Вот и тебе голову морочу
"Какой в нем (конструкторе) смысл?" Ну как - память там выделить, выполнить определенные проверки и т.п. В деструкторе соответственно - освободить память, к примеру (это актуально для С++).
А смысл иллюстрации в том, что конструктор и деструктор вызываются. Соответственно кушают определенное время. В Type нет ни конструктора, ни деструктора. Это единственная экономия.
Ладно, забей
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Таблица в 2009 Автокаде

Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пропадает таблица metro12 AutoCAD 23 06.04.2016 05:07
AutoCAD Architecture 2009 стоит ли.. mey Вертикальные решения на базе AutoCAD 25 19.04.2009 19:20
английские комнады в русском автокаде 2009 Gudvin AutoCAD 15 16.09.2008 12:14
Acad 2009 Фатальная ошибка Colin AutoCAD 5 31.07.2008 15:22
Настрой печать в автокаде Ivor AutoCAD 9 17.12.2004 10:49