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

Преобразовать кривую в множество точек


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

Может кто-то сталкивался с задачей, как преобразовать кривую в множество точек и вытянуть с solidworks-а их координаты получив текстовый файл с координатами

типа

X1 Y1

X 2 Y2

………

Или может подскажете софт который с этим справиться малой кровью.

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


Может кто-то сталкивался с задачей, как преобразовать кривую в множество точек и вытянуть с solidworks-а их координаты получив текстовый файл с координатами

типа

X1 Y1

X 2 Y2

………

Или может подскажете софт который с этим справиться малой кровью.

См. Help SW:

"Кривая через точки XYZ

...

...

Сохранить файл кривой. Выберите Сохранить или Сохранить как, укажите нужный путь и имя файла. Если расширение не указано, приложение SolidWorks добавляет расширение .sldcrv."

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

саму кривую можно и не преобразовывать. Просто построить на кривой массив точек с нужным шагом и работать с координатами этих точек.

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

Может кто-то сталкивался с задачей, как преобразовать кривую в множество точек и вытянуть с solidworks-а их координаты получив текстовый файл с координатами

типа

X1 Y1

X 2 Y2

………

Или может подскажете софт который с этим справиться малой кровью.

Для полноты картины. Точек кривой недостаточно для ее построения. Нужны еще радиусы и направления выпуклостей, если это действительно кривая и состоит и прямых отрезков и дуг. В программе Конструктор плат я решал обратную задачу: строил в Солиде кривую любой формы по данным из PCB файла.
Ссылка на сообщение
Поделиться на других сайтах

Нужны еще радиусы и направления выпуклостей, если это действительно кривая и состоит и прямых отрезков и дуг.

Вроде программист, вроде сторонник точных формулировок, а такое пишешь.

КРИВАЯ не состоит ни из дуг, ни из отрезков прямых. Кривая - это сплайн. Из участков дуг и прямых состоит автокадовская полилиния.

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

Вроде программист, вроде сторонник точных формулировок, а такое пишешь.

КРИВАЯ не состоит ни из дуг, ни из отрезков прямых. Кривая - это сплайн. Из участков дуг и прямых состоит автокадовская полилиния.

Кривая - это любая линия, отличная от прямой. Видами кривой являются и полилиния и сплайн и цепочка прямых отрезков...

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

GOLF_stream, любите Вы не потеме повысказываться. :smile:

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

Не по теме высказываетесь именно Вы, уводя обсуждение в другую сторону.

Точек кривой недостаточно для ее построения.

При чём здесь построение кривой? Речь не про построение кривой - кривая уже построена, а про координаты точек этой уже существующей кривой.

Так что не валите с больной головы (в прямом смысле) на здоровую.

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

Не по теме высказываетесь именно Вы, уводя обсуждение в другую сторону.

При чём здесь построение кривой? Речь не про построение кривой - кривая уже построена, а про координаты точек этой уже существующей кривой.

Так что не валите с больной головы (в прямом смысле) на здоровую.

Когда требуется файл с описанием кривой, это значит, что где-то эта кривая должна быть воспроизведена (построена) по данным этого файла. Поэтому я сказал о построении кривой. А Вы этого не поняли.

Чем спорить попусту, давайте лучше попросим автора уточнить вид кривой и конечную задачу.

Может, можно написать макрос, для решения этой задачи.

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

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

это всего лишь Ваши догадки.

Когда требуются координаты точек, это значит, что требуются координаты точек. Не более того.

Может, по этим координатам будут вешки выставляться или лампочки развешиваться.

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

См. Help SW:

"Кривая через точки XYZ

...

...

Сохранить файл кривой. Выберите Сохранить или Сохранить как, укажите нужный путь и имя файла. Если расширение не указано, приложение SolidWorks добавляет расширение .sldcrv."

Спасибо что тыкнули в нужно место. Виноват, проглядел это в справке.

Но что-то ну меня не получаться найти .sldcrv расширение.

post-15410-1274778673_thumb.jpg

По умолчанию solidworks добавляет .sldprt

саму кривую можно и не преобразовывать. Просто построить на кривой массив точек с нужным шагом и работать с координатами этих точек.

Это вариант. Осталось только узнать как вытащить координаты массива точек.

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

Спасибо что тыкнули в нужно место. Виноват, проглядел это в справке.

Но что-то ну меня не получаться найти .sldcrv расширение.

...По умолчанию solidworks добавляет .sldprt

...

Дык это Вы не туда жмете - это сохранить файл(документ) SW.

Надо так:

post-5350-1274779858_thumb.jpg

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

это всего лишь Ваши догадки.

Когда требуются координаты точек, это значит, что требуются координаты точек. Не более того.

Может, по этим координатам будут вешки выставляться или лампочки развешиваться.

Ну если лампочки, тогда, конечно, нужны только точки...
Ссылка на сообщение
Поделиться на других сайтах

Дык это Вы не туда жмете - это сохранить файл(документ) SW.

Надо так:

....

К сожалению выполнив такую последовательность, я получил пустой файл.

Походу данная функция работает только с кривой созданной командой “Кривая через точки XYZ”, и пока обойти у меня это не получается.

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

Надо так:

У меня не получается. Даже кривая не сохраняется, не то что координаты её точек. А можно примерчик?
Ссылка на сообщение
Поделиться на других сайтах

Когда требуется файл с описанием кривой, это значит, что где-то эта кривая должна быть воспроизведена (построена) по данным этого файла. Поэтому я сказал о построении кривой. А Вы этого не поняли.

Чем спорить попусту, давайте лучше попросим автора уточнить вид кривой и конечную задачу.

Может, можно написать макрос, для решения этой задачи.

Интересуют пока только координаты точек. Не подскажите, в какую сторону смотреть или с чего начать если придется написать макрос?

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

Пардон, это я поторопился: данной командой создается кривая по точкам из файла!

Считать координаты вершин сплайна ИМХО только макросом.

Вот например:

"

Public Sub spl_coord()

'Get Sketch Points Example (VB)'This example shows how to loop through the active sketch and extract the X,Y values of every sketch point.

'------------------------------------------------------------

Dim swApp As Object

Dim Part As Object

Dim sketchPointArray As Variant

Dim theSketchPoint As Object

Dim pointCount As Integer

Dim xValue As Double

Dim yValue As Double

Dim zValue As Double

Set swApp = CreateObject("SldWorks.Application")

Set Part = swApp.ActiveDoc

Set theSketch = Part.GetActiveSketch2

sketchPointArray = theSketch.GetSketchPoints2

pointCount = UBound(sketchPointArray) + 1

' For each SketchPoint

For i = 0 To (pointCount - 1)

' Set local SketchPoint object (optional)

' Set theSketchPoint = sketchPointArray(i)

' Get the coordinates

xValue = sketchPointArray(i).X

yValue = sketchPointArray(i).Y

zValue = sketchPointArray(i).Z

' <Do something useful with the data>

Next i

End Sub

"

Я пробовал в VB - работает.

Надо дописать несколько строк для записи в файл этих координат.

В Helpe по API SW есть примеры по получению разных данных и со сплайна и с кривой:

Get and Set Spline Handles Example (VB)

Get and Set Spline Properties Example (VB)

Get Curve Spline Points Example (VB)

Get Curve Spline Points Example (C++ COM)

Get Tangent Vectors for Sketch Points Example (VB)

...

Вроде было у меня что-то готовое, но сейчас, хоть убей не могу найти... :-(

Хотя в справке SW написано как указывая вершины кривой или сплайна, можно создавать эту таблицу и записывать в файл, но на этой операции у меня SW вылетает!!!

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

Спасибо , попробую разобраться

Задача не очень тривиальная...

Что у Вас за кривая? Как она получена: преобразованием объектов("объединенная"), на базе сплайна, пересечением поверхностей или еще как?

И координаты каких именно точек Вы хотите получить?

Шире обрисуйте задачу...

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

Задача не очень тривиальная...

Что у Вас за кривая? Как она получена: преобразованием объектов("объединенная"), на базе сплайна, пересечением поверхностей или еще как?

И координаты каких именно точек Вы хотите получить?

Шире обрисуйте задачу...

При расчетах (особенно используя методику приведенную в книгах годов этак 80-х ) иногда сталкиваюсь со значениями которые берутся с графика (в связи со сложностью для вычисления, как там написано :)). Выражение в 90% процентах случаях, по которым были построены эти графики отсутствуют. Поэтому хотел так сказать, оцифровать часто использованные графики и написав простенькую программку упростить себе жизнь. И как я написал в первом сообщении, сделать хотелось это минимальными затратами времени. Но вижу, задачка получается довольно сложная.

Я не программист и поэтому прошу прощение, если мой подход для решения задачи неверный.

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

При расчетах (особенно используя методику приведенную в книгах годов этак 80-х ) иногда сталкиваюсь со значениями которые берутся с графика (в связи со сложностью для вычисления, как там написано :)). Выражение в 90% процентах случаях, по которым были построены эти графики отсутствуют. Поэтому хотел так сказать, оцифровать часто использованные графики и написав простенькую программку упростить себе жизнь. И как я написал в первом сообщении, сделать хотелось это минимальными затратами времени. Но вижу, задачка получается довольно сложная.

Я не программист и поэтому прошу прощение, если мой подход для решения задачи неверный.

Я не говорил, что подход неверный. Этот подход м.б. верным для одних целей и неверным для других - например, получив координаты этих точек, попытаться построить новыц сплай, идентичный исходному.

Для "оцифроки", в принципе можно применить, но как Вы эти графики в SW "загонять" будете?

Надо подумать... М.б. есть другие способы, более эффективные. Например, "загнать" этот график в AutoCAD, преобразовать в полилинию и коммандой `List`(по русски не помню) сразу получить координаты вершин полилинии. Не проще ли это будет?

Может быть есть и др. способы оцифровки, в MathCAD, например...

PS я раньше тоже сталкивался с такими проблемами, но почти всегда находилась другая методика, без таких графиков...

Что за расчеты, если не секрет?

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

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

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

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

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

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

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

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

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

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

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




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