Перейти к публикации

Рекомендованные сообщения

всем приветы.

вопрос: как с помощью SolidWorks API сжать/растянуть текст заметки на чертеже??? :confused_1:

в русской версии солида это делает кнопка с названием "Уместить текст", в английской версии кнопка называется "Fit Text".

добрые программеры подскажите please.

Ссылка на сообщение
Поделиться на других сайтах


fox1001

Посмотри в сторону <noindex>ITextFormat</noindex> , т.е. получи заметку, приведи к заметке))) а из неё уже этот текстформат. Насколько я понял, искомое - это WidthFactor.

Ссылка на сообщение
Поделиться на других сайтах
  • 2 месяца спустя...

Всем приветы.

Вопрос такой: имею деталь (модель детали), в этой детали есть несколько размеров. зная имя размера (например имя размера "D1@Бобышка-Вытянуть1") как его найти средствами SolidWorks API ???

приветствуется любая помощь. если у кого-то и код для такого поиска имеется - поделитесь пжлста.

SolidWorks 2012 SP4, win 7 x64.

Ссылка на сообщение
Поделиться на других сайтах

Всем приветы.

Вопрос такой: имею деталь (модель детали), в этой детали есть несколько размеров. зная имя размера (например имя размера "D1@Бобышка-Вытянуть1") как его найти средствами SolidWorks API ???

приветствуется любая помощь. если у кого-то и код для такого поиска имеется - поделитесь пжлста.

SolidWorks 2012 SP4, win 7 x64.

IDimension swDimension = swModel.Parameter(nameDimension); // получаем объект Dimension по имени

int ires = swDimension.SetValue3(valueDim, (int)swSetValueInConfiguration_e.swSetValue_InAllConfigurations, null); // присваиваем новое значение размера, учитывая конфигурации
Ссылка на сообщение
Поделиться на других сайтах

Вопрос такой: имею деталь (модель детали), в этой детали есть несколько размеров. зная имя размера (например имя размера "D1@Бобышка-Вытянуть1") как его найти средствами SolidWorks API ???

Вероятно, ModelExtension.SelectByID, а потом выделенное можно приближать/удалять/менять: <noindex>http://help.solidworks.com/2010/english/ap...electByID2.html</noindex>
Ссылка на сообщение
Поделиться на других сайтах

Вероятно, ModelExtension.SelectByID: <noindex>http://help.solidworks.com/2010/english/ap...electByID2.html</noindex>

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

fox1001 не уточнил конкретную задачу.

Ссылка на сообщение
Поделиться на других сайтах

fox1001

траверсить)))

"найти" ?

в прямом смысле, всё вроде понятно.

private void button1_Click(object sender, EventArgs e)

		{

			Feature swFeature;

			DisplayDimension swDispDim;

			Dimension swDim;

			string DimName;

			int TypeTol;

			Feature swNextFeature;

			swModel.AddConfiguration3(textBox1.Text, "", "", 0); //Если для всех конфиг, то их нужно перебирать

			swFeature = (Feature)swModel.FirstFeature();

			while ((swFeature != null))

			{

				swDispDim = (DisplayDimension)swFeature.GetFirstDisplayDimension();

				while ((swDispDim != null))

				{

					swDim = swDispDim.GetDimension2(0);

					DimName = swDim.FullName.ToString();

					TypeTol = swDim.GetToleranceType();



										//Тут делаешь всё что хочешь с размером



					swDispDim = (DisplayDimension)swFeature.GetNextDisplayDimension(swDispDim);

				}

				swNextFeature = (Feature)swFeature.GetNextFeature();

				swFeature = null;

				swFeature = swNextFeature;

				swNextFeature = null;

			}

			swModel.ForceRebuild3(true);

		}
Ссылка на сообщение
Поделиться на других сайтах

fox1001

траверсить)))

в прямом смысле, всё вроде понятно.

Скрытый текст: Код
private void button1_Click(object sender, EventArgs e)

{

Feature swFeature;

DisplayDimension swDispDim;

Dimension swDim;

string DimName;

int TypeTol;

Feature swNextFeature;

swModel.AddConfiguration3(textBox1.Text, "", "", 0); //Если для всех конфиг, то их нужно перебирать

swFeature = (Feature)swModel.FirstFeature();

while ((swFeature != null))

{

swDispDim = (DisplayDimension)swFeature.GetFirstDisplayDimension();

while ((swDispDim != null))

{

swDim = swDispDim.GetDimension2(0);

DimName = swDim.FullName.ToString();

TypeTol = swDim.GetToleranceType();

//Тут делаешь всё что хочешь с размером

swDispDim = (DisplayDimension)swFeature.GetNextDisplayDimension(swDispDim);

}

swNextFeature = (Feature)swFeature.GetNextFeature();

swFeature = null;

swFeature = swNextFeature;

swNextFeature = null;

}

swModel.ForceRebuild3(true);

}

Зачем загонять в цикл, если известно имя размера?
Ссылка на сообщение
Поделиться на других сайтах

Shvg

а если известно имя только D1?

Вопрос такой: имею деталь (модель детали), в этой детали есть несколько размеров. зная имя размера (например имя размера "D1@Бобышка-Вытянуть1") как его найти средствами SolidWorks API ???

Ссылка на сообщение
Поделиться на других сайтах

If swDimension Is Nothing Then

MsgBox("Размера с именем " + TextBox1.Text + " в этой детали нет")

Else

Label2.Text = ""

Label2.Text = Format$(swDimension.GetSystemValue2("") * 1000, "#.00")

End If

End Sub

End Class _linenums:0'>Imports SolidWorks.Interop.sldworksPublic Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click swApp = Runtime.InteropServices.Marshal.GetActiveObject("SldWorks.Application") swModel = swApp.ActiveDoc Dim swDimension As IDimension = swModel.Parameter(TextBox1.Text) ' получаем объект Dimension по имени If swDimension Is Nothing Then MsgBox("Размера с именем " + TextBox1.Text + " в этой детали нет") Else Label2.Text = "" Label2.Text = Format$(swDimension.GetSystemValue2("") * 1000, "#.00") End If End SubEnd Class

если размер существует:

Изображение

ну и если такового нету:

Изображение

Ссылка на сообщение
Поделиться на других сайтах

Прошу помощи гуру)))

Чем конкретно отличается Transform.ArrayData от Orientation3.ArrayData?

Ссылка на сообщение
Поделиться на других сайтах
  • 1 месяц спустя...

На Форуме SolidWorks 18 октября в Москве впервые будет проведена отдельная секция по API. Всем интересующимся - добро пожаловать.

Ссылка на сообщение
Поделиться на других сайтах

На Форуме SolidWorks 18 октября в Москве впервые будет проведена отдельная секция по API. Всем интересующимся - добро пожаловать.

Выпустили бы книжечку на русском по API SolidWorks.

А какие там ещё секции будут? По пресс-формам будет? MoldWorks2012 покажут? Хотя он ещё не вышел :smile: . Почему то никогда не презентуют Imold for Solidworks.

Ссылка на сообщение
Поделиться на других сайтах

Выпустили бы книжечку на русском по API SolidWorks.

книжечка - эт малова-то будет. БИБЛИЯ - не меньше.
Ссылка на сообщение
Поделиться на других сайтах

Выпустили бы книжечку на русском по API SolidWorks.

А какие там ещё секции будут? По пресс-формам будет? MoldWorks2012 покажут? Хотя он ещё не вышел :smile: . Почему то никогда не презентуют Imold for Solidworks.

Учебник только на английском, но появились курсы по API на русском)). Из секций: PDM, ТПП с акцентом на механообоработку и техпроцессы, Проектирование РЭА, Расчеты...

MoldWorks идет на русском, включая учебник. Функционал весьма достойный. Особого смысла разбирать альтернативы, по видимому, нет.

Ссылка на сообщение
Поделиться на других сайтах

но появились курсы по API на русском))

Курсы по программированию? так это можно и без привязки к Solidworks изучать.

Ведь на курсах весь API не охватишь, только может какие-то хитрости рассказать, но эти хитрости от версии к версии меняются и отражены в справке. Да и API постоянно в движении, рассказ о какой-нибудь функции сегодня, завтра уже разговор ни о чём, т.к. функция или процедура уже ликвидирована из интерфейса или появляются более совершенные функции/процедуры/хитрости...

В чём суть этого курса? Какие цели этого курса? Чему на них учат?

Ссылка на сообщение
Поделиться на других сайтах

Выпустили бы книжечку на русском по API SolidWorks.

Зачем за это ещё и платить? ))) Или тоже сертификат дадут? Мол "Дипломированный макросописатель" :clap_1:

В интернете полно инфы, полно видео, полно кода. Нововведения в их специи - куски леоновского кода, которые он сделал уже давно. (субъективно, сугубо ИМХО)

Ну может если только за EPDM ухватиться, да и то дадут основы а остальное к техподдержке (а как известно, там нужна подписка).

Итого получаем: основы макросов + доступ к некоторым возможностям, которые есть на офф форуме в разделе Documents + книжечка с картинками + подписка = 30 000 р. + free + 5000 р. + 1500$

Что имеем: форум, набитый под завязку всем, чем только можно + дофига примеров + справка солида + русскоязычный раздел на сапр2000 по API + интернеты со всякими видеопримерами + пару книг обучалок (от Люка, на торрентах) = free for all.

Может чего недоглядел. И реально потраченные тысячи РЕАЛЬНО научат кодить...ага :laugh: :laugh:

Это напоминает обучение секретарш созданию техпроцессов.

Ссылка на сообщение
Поделиться на других сайтах

Курсы по программированию? так это можно и без привязки к Solidworks изучать.

Ведь на курсах весь API не охватишь, только может какие-то хитрости рассказать, но эти хитрости от версии к версии меняются и отражены в справке. Да и API постоянно в движении, рассказ о какой-нибудь функции сегодня, завтра уже разговор ни о чём, т.к. функция или процедура уже ликвидирована из интерфейса или появляются более совершенные функции/процедуры/хитрости...

В чём суть этого курса? Какие цели этого курса? Чему на них учат?

Все абсолютно верно подмечено, мне ценность курса видится в последующей персональной поддержке в течение 3 месяцев. Будет ли это востребовано - покажет время

....Нововведения в их специи - куски леоновского кода....

Это что за детский сад? :))) Кто то на хвост наступил, что так желчи много накопилось?
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.



×
×
  • Создать...