Исходники, описания, примеры

Автор olden, 12.10.06, 07:35:42

« предыдущая - следующая »

0 Пользователей и 1 гость просматривают эту тему.

Sheiker

Спасибо.... :) но  уж больно хитро-мудро.
Скрее всего должен быть более простой способ , без пересохранений и вставок других сборок)))
В КОМПАС 10 есть компонент создания детали, а так же компонент создания подсборки.

С деталью понятно : ksDocument3D::CreatePartFromFile или ksDocument3D::CreatePartInAssembly.
Может и подсборку можно аналогично создать???
Если есть у кого пример, буду признателен.
PS
не совсем понял по поводу "...Если надо сделать из текущей ..."

NilsBor

Есть у кого скомпилированная библиотека генерации команд для станка с ЧПУ, исходники которой представлены в посте
http://forum.ascon.ru/index.php/topic,5841.msg44925.html#msg44925?
Самому скомпилировать не удается по причине отсутствия компилятора. А посмотреть очень хочется.

SHTORM

помогите TestTypes.dcu найти компонент для Delphi
bymer2@list.ru    жду....................

chifir

Есть вопрос товарищи, есть поподробней по программированию Компаса, чем хелп и примеры в сдк, какие нибудь туториалы или маны? гуглил гуглил но ничего конкретного не нашел...  буду благодарен.

Prog2

Цитата: chifir от 09.06.09, 14:54:18
...есть поподробней по программированию Компаса, чем хелп и примеры в сдк, какие нибудь туториалы или маны?

Пока не видел ничего лучше вот этих пособий:
http://download.ascon.ru/public/educat/master/DelphiAUTO.zip
http://download.ascon.ru/public/educat/master/BuilderAUTO.zip

chifir

спасибо большое, уже нашел) но некоторые вопросы до сих пор остались...

Sabahs

Цитата: chifir от 09.06.09, 14:54:18
Есть вопрос товарищи, есть поподробней по программированию Компаса, чем хелп и примеры в сдк, какие нибудь туториалы или маны? гуглил гуглил но ничего конкретного не нашел...  буду благодарен.


SDK 50% информации, правда нужно код прорабатывать, но зато практика. Начинайте с простого и все у Вас получится.


MalCer

Привет всем, я новичок, так что ногами не пинать:) Решил не создавать новую тему, а написать сюда. Решил вот написать свою программу на Делфи для Компаса. Скачал много исходников, но никак не могу скомпилировать ни один проект :(. Делфи знаю на среднем уровне, но таких программ в жизни не писал. Так вот, скажите мне, почему у меня постоянно выскакивает ошибка при подключения модуля:
Chertezh_1 in 'Chertezh_1.pas';
Спасибо, все кто откликнется!!!

Sabahs

Цитата: MalCer от 15.07.09, 18:07:42
Привет всем, я новичок, так что ногами не пинать:) Решил не создавать новую тему, а написать сюда. Решил вот написать свою программу на Делфи для Компаса. Скачал много исходников, но никак не могу скомпилировать ни один проект :(. Делфи знаю на среднем уровне, но таких программ в жизни не писал. Так вот, скажите мне, почему у меня постоянно выскакивает ошибка при подключения модуля:
Chertezh_1 in 'Chertezh_1.pas';
Спасибо, все кто откликнется!!!


Файлы *.pas сгенерираванные под Dilphi7, для Компас V11, V10 можно скачать здесь:

http://mariupolsapr.narod.ru/

пример проекта библиотеки http://mariupolsapr.narod.ru/lib/animaciq3d.rar

НовичЁк

Люди может кто помочь)))), в общем задача такая, необходимо создать прикладную библиотеку в делфи для компаса, кажется со всем понятно, только в прямоугольнике не могу сделать фаски или скругления, заранее всем спасибо....
Кстати кому может поможет у меня есть пример в СИ, а надо в делфи...
reference arr = ::CreateArray (CORNER_ARR, 0);    // создать массив параметров углов
CornerParam par;               // структура параметров угла
par.index = 5;               // индекс угла
par.fillet = 0;                  // признак фаски
par.l1 = 345;                  // длина фаски 1 сегмента
par.l2 = 456.987;               // длина фаски 2 сегмента
::AddArrayItem (arr, -1, &par, sizeof (CornerParam)); // добавить угол в массив
par.index = 45;               // индекс угла
par.fillet = 0;                  // признак фаски

par.l1 = 345;                  // длина фаски 1 сегмента
par.l2 = 456.987;               // длина фаски 2 сегмента
::AddArrayItem (arr, -1, &par, sizeof (CornerParam));// добавить угол в массив
par.index = 65;               // индекс угла
par.fillet = 0;                  // признак фаски
par.l1 = 345;                  // длина фаски 1 сегмента
par.l2 = 456.987;               // длина фаски 2 сегмента
::AddArrayItem (arr, -1, &par, sizeof (CornerParam));// добавить угол в массив
par.index = 85;               // индекс угла

par.fillet = 0;                  // признак фаски
par.l1 = 345;                  // длина фаски 1 сегмента
par.l2 = 456.987;               // длина фаски 2 сегмента
::AddArrayItem (arr, -1, &par, sizeof (CornerParam));// добавить угол в массив
int count = ::GetArrayCount (arr);         // количество элементов в массиве
for ( int i = 0; i < count; i++ ) {

// выводим параметры углов в окне сообщения
char buf[128];
if ( ::GetArrayItem (arr, i, &par, sizeof (CornerParam))) {

::sprintf ( buf, "индекс элемента %i равен %i; %i, %f, %f", i,

par.index, par.fillet, par.l1, par.l2);

::Message (buf);

}

}
::ExcludeArrayItem (arr, 2);            // удаляем второй элемент массива
count = ::GetArrayCount (arr);         // количество элементов в массиве
for ( int i = 0; i < count; i++ ) {

// выводим параметры углов в окне сообщения
char buf [128];
if ( ::GetArrayItem (arr, i, &par, sizeof (CornerParam))) {

::sprintf (buf, "индекс элемента %i равен %i; %i, %f, %f", i, par.index,

par.fillet, par.l1, par.l2 );

::Message( buf );

}

}
if ( ::GetArrayItem (arr, 1, &par, sizeof (CornerParam))) {

// изменяем параметры элемента с индексом 1
par.index = 0;
par.fillet = 0;
par.l1 = 0;
par.l2 = 0;
::SetArrayItem( arr, 1, &par, sizeof(CornerParam) );
}

count = ::GetArrayCount (arr);         // количество элементов в массиве
for ( int i = 0; i < count; i++ ) {

// выводим параметры углов в окне сообщения
char buf[128];
if ( ::GetArrayItem (arr, i, &par, sizeof (CornerParam))) {

::sprintf (buf, "индекс элемента %i равен %i; %i, %f, %f", i, par.index,

par.fillet, par.l1, par.l2);

::Message( buf );
}
}
::ClearArray (arr);               // очищаем массив
char buf[128];
::sprintf (buf, "кол-во элементов = %i", ::GetArrayCount (arr));
::Message (buf);
::DeleteArray (arr);               // удаляем массив

lewka

Привет!!! Подскажите пожалуйста как делать сопряжения деталей 3D в сборке с помощью Delphi 7.

Sabahs

Цитата: lewka от 19.08.10, 13:02:19
Привет!!! Подскажите пожалуйста как делать сопряжения деталей 3D в сборке с помощью Delphi 7.

//Добавить сопряжение совпадение
     PartCollection1:=ksPart(iDoc3DSborka.GetPart(-1));
     EntityCollection:=
      ksEntityCollection(PartCollection1.EntityCollection(o3d_pointCS));
     Entity1:=ksEntity(EntityCollection.GetByIndex(0));
     PartCollection1:=ksPart(iDoc3DSborka.GetPart(0));
     EntityCollection:=
      ksEntityCollection(PartCollection1.EntityCollection(o3d_pointCS));
     Entity2:=ksEntity(EntityCollection.GetByIndex(0));
     iDoc3DSborka.AddMateConstraint(mc_Coincidence,Entity1,Entity2,0,0,0);
     iDoc3DSborka.RebuildDocument;

schevron

Кто-нибудь может выложить исходник программы или библиотеки, который создает чертеж со всеми наворотами ( тт , указанная и не указанная шероховатость , и т.д.) . И если можно то в VB6 . Хоть что-нибудь .

Николай

У меня тоже такая потребность, но, похоже, все программеры игнорируют VB и подробной методички под Бейсик не предвидится.

aalleexxaa

Здравствуйте, а исходных примеров к книге Максима Кидрука (КОМПАС-3D V10 на 100 %) нет ни у кого? А то по книге делаю, а многое (даже на начальном этапе не работает). в интернете не нашел (((

Vovavovckiy

aalleexxaa, привет. У меня есть диск к книге Кидрука, если хочешь, могу прислать исходники, пиши почту @.

aalleexxaa

жду  :)
Цитировать
aalleexxaa@mail.ru

пасиба

Vovavovckiy

Проверяйте  почту, предлагаю сотрудничать. Я отправил только 6 главу, там где исходные коды приложений, есть еще и другие главы, если надо , пишите

snegok74

Выкладываю свой примерчик который умеет:
1. Менять форматы чертежа (A3 ,А4 портрет, ландшафт)в одно нажатие кнопки на панели кнопок
2. Нарисовать две пересекающиеся прямые, что то типа начала координат в пару нажатий кнопки
3. Нарисовать прямоугольник (заготовку) детали .

После подключения  библиотеки включите отображение панели инструментов "Подготовка чертежа"

Все создано под Компас 3-D V13 sp1 и в Borland Delphi 7

snegok74

Спешу поделиться своим примерчиком "Диалог открытия файла с предварительным просмотром".
Написано и проверено в Компас 3D V13, Windows 7 sp1 32bit, Delphi 7
Что мне нужно было от этого диалога:
- возможность изменения размеров окна предпросмотра при открытии файлов стандартным диалогом стиля Windows XP
- находить, просматривать и открывать файлы измененные за какой то период, допустим за последний месяц
Что он умеет:
- изменять размеры формы предварительного просмотра которая приклеена рядом к диалогу
- искать файлы по имени и дате изменения, и показывать их в окне предпросмотра
Плюсы:
- работает, уже пол дня им пользовался ))))
Минусы:
- поиск (вернее просмотр из поиска) некорректно работает под Windows XP
- нет возможности выбора нескольких файлов(можно сделать кнопку типа "Открыть в фоне не закрывая диалог")
- не задействована галочка "Только чтение"(забыл про нее совсем)
- пример не является образцом хорошего программирования, и не отлажен до конца

Скриншот, исходники(source.7z)  и компилированая библиотека(EventsAuto.7z.001 и 002) прилагаются.