Свежие обсуждения
Идеи

3D принтер

1 10 30

Dim i As Integer
i = 0
Dim Str_put As String
Str_put = "D:\Documents and Settings\Mehalych\Мои документы\Level_"
Dim Str_name As String
Str_name = Str(i)
Dim Str_bmp As String
Dim impflt As ImportFilter
Dim impopt As StructImportOptions
Set impopt = New StructImportOptions
impopt.Mode = cdrImportFull
Str_bmp = Str_put + Str_name + ".bmp"
Set impflt = ActiveLayer.ImportEx(Str_bmp, cdrBMP, impopt)
impflt.Finish
Dim s1 As Shape
Set s1 = ActiveShape
s1.Move -0.469799, 5.266047
ActiveDocument.PrintOut

 

Михалыч А: Сейчас учу принтер ездить над столом и естественно пришлось разбираться с ШД принтера на протяжке. Сигналы управления с амплитудой в 42В (очень меня такое напряжение удивило). У двигателя две катушки. Сигнал с ВК (внутреннего контроллера, тот что в принтере) сдвинуты по фазе на пол импульса. Если первым идет импульс для второй катушки, то движение вперед, если первым идет импульс для первой, то движение назад (ВК включает движение назад для разблокировки устройства подачи бумаги). Простой коммутацией концов катушки (как вы хотели) можно заставить двигатель крутиться в обратную сторону, но тут есть загвоздка. ВК не будет крутить вал долго, как только он посчитает, что лист должен кончится, он еще покрутит вал и если ДБ (датчик бумаги) не перейдет в КНВ (каретку не вижу), то ВК остановит двигатель и выдаст сообщение об ошибке. Надо будет жать кнопку.
Более подробно о поведении ШД я написал в теме про переделку струйного принтера на 144 странице в конце, если интересно почитайте.

 

Почти нашел причину.
Функция Str в строке Str_name = Str(i) перед цифрой ставит пробел.
И как теперь от этого избавляться?

: Str_name : " 0" : String

 

Поставил строку Str_name = LTrim(Str_name) и всё заработало.
Всё. Программное обеспечение для 3D-принтера полностью готово.
Не знаю, когда теперь руки до железа дойдут, но дойдут обязательно.

 

Рад, что сами разобрались.
А, вообще, хелп "спасёт отца русской демократии".

Цитата: "При преобразовании числа в строку в начале строки обязательно резервируется позиция для знака числа. Если число является положительным, возвращенная строка будет содержать пробел на месте знака.

Чтобы представить числовое значение как дату, время, денежное значение или в специальном формате, следует использовать функцию Format. В отличие от функции Str, функция Format не резервирует позицию для знака положительного числа."

 

Михалыч А может народу озвучишь алгоритм расчета сечений? или это военная тайна? Как ты расчитывал проекции точек на секущую плоскость? С цилиндром все понятно так как его сечение всегда круг, а сложные фигуры, где точки находяться на разном уровне и разных углах? Хотелось бы послушать по какому алгоритму ты будешь сечь сложный объект!

 

Мой алгоритм сечения подходит только для «моих» матлабовских объектов. Если это не смущает, то в двух словах –
в бесконечном цикле сечется только один отрезок с двумя точками (вершина) на концах.
Объект можно сечь «в две стороны», отталкиваясь от двух точек самого первого отрезка. Так вот этого делать не надо, тогда легко ловится конец бесконечного цикла. Просто нужно обязательно вернуться к первому отрезку.
Для сечения одного отрезка мне хватает одной теоремы Пифагора. Обсуждать эту теорему мне не хочется.
Сложные объекты (хотя мне сильно сложные и не нужны) буду делать, визуально соединяя примитивы. А в программе каждый примитив остается отдельной структурой. Для вычитания примитива его сечение нужно нарисовать белым цветом в последнюю очередь.

 

Уважвемые, а кто знает как реализованна в SolidWorks2007 функция 3D print.

Нажимаю на эту кнопульку - выдает это

Жму ОК появляется окно

Еще есть вкладка.

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

А вообще счас попробую поэксперементировать по принцыпу Михалыча только в Солиде.

 

Михалыч А а можно ли как нибудь посмотреть Вашу программу???

 

Честно говоря, я всем этим занимаюсь ради денег, потому как на работу не хожу десятилетиями. Я не смог найти нигде готового "секателя", кроме как в комплекте с 3D принтером. А вдруг у меня железо заработает и тогда я на продажу смогу предлагать полный эксклюзив - и своё ПО и переделанное не своё железо. Так что, извините, буду блюсти коммерческую тайну, которая состоит в том, что программа примитивная до ужаса.