Leon

Технические требования

50 posts in this topic

sav

Так вначале так и было. И обратно в солид значки передаются именно в таком виде. Но в самом редакторе мне хотелось чтобы значки выглядили как положено, а не в виде полей. Для градуса и значка плюс\минус в обычной кодировке из 256 символов значки имеются. А для диаметра его нет. А работать с текстом в юникоде у меня не получилось. Если текстовый файл в котором хранятся ТТ сделать юникодовским, то в программе в выпадающих списках оказываются закорючки. Попытаюсь еще, может быть и получится. Хотел еще профили сделать, чтобы часто используемые наборы ТТ сразу вставлять. Не знаю только когда время будет.

Share this post


Link to post
Share on other sites


:smile: TO: Leon

Не знаю поможет тебе это или нет, но уменя была проблема с передачей текста из формы программы в свойства файла SW(так же появлялись крякозябры), для исправления ситуации написал следующий код на VB, после этого все стало нормально.

Private Function Conv2Ascii(Strok As String)

			Dim i As Integer

			For i = 1 To Len(Strok)

			If Asc(Mid(Strok, i, 1)) = 10 Or Asc(Mid(Strok, i, 1)) = 13 Then

				Conv2Ascii = Conv2Ascii & Mid(TextBox1.text, i, 1)

			ElseIf Asc(Mid(Strok, i, 1)) >= 128 And Asc(Mid(Strok, i, 1)) <= 255 Then

				Conv2Ascii = Conv2Ascii & Mid(Strok, i, 1)

			Else

				Conv2Ascii = Conv2Ascii & Chr(AscW(Mid(Strok, i, 1)))

			End If

			Next i

End Function

Share this post


Link to post
Share on other sites

Спасибо, Kelny, но чего-то не помогло. У меня правда ситуация немного другая. У меня исходный текстовый файл в формате Unicode. Когда текст из него считывается в программу то мне его не отобразить в нормальном виде. Читаются только латинские буквы. Значок диаметра заменяется буквой Ш. Русский текст выглядит примерно так "07<5@K 4;O A?@02>:."

Может надо какую библиотеку подгрузить? :g:

Share this post


Link to post
Share on other sites

Можно MSDN посмотреть <noindex>http://msdn.microsoft.com/library/rus/defa...gclasstopic.asp</noindex>

Ну и к слову по поводу того что некоторые тех требования могут быть растянуты на несколько строк, вот интересный макрос который задает ширину примечания и если все записано в одну строчку автоматом переносится на новую строчку не сбивая стандартную нумерацию SW, ну собственно: <noindex>Изменение ширины примечания.swp</noindex>, но и твой вариант Leon мне тоже понравился.

Share this post


Link to post
Share on other sites

MSDN у меня есть на диске. Я тут интернет перерыл, и про библиотеку fm20 прочитал и про кодировки еще раз, и так и сяк пытался, и реестр ковырял, но что-то все не то. Правда обрывки русского текста мне все же удалось вытащить, но только обрывки. Что-то я не так делаю или редактор у меня кривой или руки.

Если кому не в тягость, попробуйте создать файл с расширением txt в кодировке юникод с русским текстом, а затем считать его программой и строки вывести в combobox :surrender::surrender::surrender:

Share this post


Link to post
Share on other sites

To: Leon

Сохранял в формате unicod через WordPad, вот накидал маленько посмотри

Private Sub Form_Load()



'==================================================================

'Этот способ не читает Unicod

'==================================================================

Source = "G:\Unicod\info.txt"

  Open Source For Input As #1			   ' Open source file.

  Do While Not EOF(1)					   ' Loop until end of file.

	Line Input #1, Reader

ComboBox1.AddItem Reader

Loop

Close #1

'==================================================================



'==================================================================

'Этот способ читает Unicod, ну собственно ссылка код ниже :), из хелпа примерчик OpenAsTextStream Method.

'==================================================================

TextStreamTest

'==================================================================



End Sub



Sub TextStreamTest()

	Const ForReading = 1, ForWriting = 2, ForAppending = 3

	Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0

	Dim fs As Scripting.FileSystemObject, f, ts, s

	Set fs = CreateObject("Scripting.FileSystemObject")

	'fs.CreateTextFile "G:\Unicod\info.txt"		   'Create a file

	Set f = fs.GetFile("G:\Unicod\info.txt")

	'Set ts = f.OpenAsTextStream(ForWriting, TristateUseDefault)

	'ts.Write "Hello World"

	'ts.Close

	Set ts = f.OpenAsTextStream(ForReading, TristateUseDefault)

	While ts.AtEndOfStream = False

	s = ts.ReadLine

	ComboBox1.AddItem s

	'MsgBox s

	Wend

	ts.Close

End Sub

Ну и конечно знак диаметра попробовал вставить работает в комбобоксе как знак диаметра :)

Тоже самое, но уже файлы:

А исходники ТТ3 можешь выложить? :smile:

Ну или прислать?

Share this post


Link to post
Share on other sites

Спасибо Kelny. Очень меня выручаешь. Я вечером посмотрю дома. Вот исходники TT3.

TT3__________.rar

Share this post


Link to post
Share on other sites

Обращайся чем смогу помогу. Тока в архив не положил тот код, что в форуме написал :blink: , собрал архив до того как сохранился щас вроде поправил :smile: .

Share this post


Link to post
Share on other sites

Спасибо! Возможно посмотреть исходники последней версии?

Share this post


Link to post
Share on other sites
35 минут назад, iurii12345 сказал:

исходники последней версии?

13 лет назад было деле :)  Уже давно это все в отдельной теме макросы Леона.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.



  • Сообщения

    • ShifuCheng
               Постараюсь ответить более точно, думаю я теперь полностью в теме разобрался, касательно данного чертежа так точно.            Размеры в прямоугольниках называются базовыми размерами, другими словами номинальные или еще можно сказать, идеальные размеры. Если речь идет про отверстие или вал (круглую бобышку), то нельзя в замен базовых размеров с указанием геометрического допуска позиционирования использовать размеры с допусками, почему нельзя? Потому, то в таком случае поле допуска для отверстия примет квадратную или прямоугольную форму и смысла в нем не будет, так как биение сверла/фрезы по огружности идет, потому и нагородили весь этот огород с позиционными допусками, для того, что бы поле допуска было кругом, что соответствует производственной реальности. Для понимания того, что я тут написал см. эти 2 видео, в них очен наглядно показано, что такое поля допуска и зависимое поле допуска: 1.   2.   Это было лирическое отступление, надеюсь эти базовые понятия точно всем тут понятны, без них просто нет смысла дальше двигаться :)   "1. Какой позиционный допуск (число) имеют размеры в скобках?" - чисто для базового восприятия можно так говорить, но это не корректно по существу, почему, я выше пояснил, видео это так же поясняет.         Начнем со шпоночного паза,       Базовая плоскость "B" - это ось вала, тут возникает вопрос, как же относитально оси задавть сдвиг паза (меня лично это в ступор ввело), но на данном чертеже работает все так как я опишу ниже.      При ширине паза от 18.0 до 18.2 его ось может смещаться по оси Y (по вертикали) на 0.1 вверх и на 0.1 вниз (поле допуска 0.2). Или еще можем сказать, что если мы можем обеспечить поле допуска 0.2 то ширина паза может быть 18.0. Буква "М" после значения допуска говрит, нам, что это зависмый допуск по принципу "Максимум Материала", в данном случае это значит, что при технологической необходимости нам разрещается увеличить значение поле допуска с 0.2 до 0.4, т.е. можем ось паза смещать по оси Y (по вертикали) на 0.2 вверх и на 0.2 вниз, но при этом ширина паза уже обязана быть 18.2. На этом чертеже не указано, но вообще возможно ограничить верхний порог поля допуска, например сказать, что отверстие может быть увеличено на +0.2 (до 18.2) но допуск только на +0.1 может быть увеличен (до 0.3) и не больше.       После указания базовой плоскости "B" (оси, в нашем частном случае на этом чертеже) стоит буква "М" в круглешке, что это? Это означает, что нам разрешен сдвиг этой базовой плоскости по принципу максимум материала (разрешен сдвиг для паза с шириной 18, а если бы стояла буква "L" в круглешке, то разрешалось бы сдвинуть паз только если бы он был шириной 18.2), это никак вообще не влияет на цифры, которые я приводил выше, они остаются теми же самыми в любом случае, воспользуемся ли мы разрешенным нам сдвигом базовой плоскости или нет (это просто разрешение сдвинуть базовую плоскость, мы ее не обязаны сдвигать, если не хотим этого делать, а точнее если можем это не делать). Зачем с практической точки зрения в реальной жизни разрешать сдвиг? - потому, что на реальном производстве может быть крайне сложно привязаться к виртуальной базовой плоскости, такой как, базовая плоскость "B" в нашем случае, потому разрешается дополнительная погрешность, далее мы будем привязывать отвертия уже к центральной плоскости паза, на практике к его стенкам и это уже в гораздо проще сделать, но мы базовые размеры уже относительно паза должны будем считать, но это я забегаю в перед.  И так как это читать? - Если мы обеспечим диаметр центрального вала 25 то в этом случае мы имеем право сдвинуть базовую плоскость "B" (относительно базового/идеального центра вала) по оси Y (по вертикали) на 0.05 вверх и на 0.05 вниз (в поле допуска 0.1).            Еще я пропустил описание первичной базовой плоскости "А", она задает перпендикулярность стенок паза к базовой плоскости "А" на тоде поле допуска 0.2 (отклонение центральной вертикальной плоскости паза может составить 0.2), поскольку это зависимый допуск, то так же мы имеем право увеличить этот допуск до 0.4 если увеличим ширину паза до 18.2. И да сразу скажу, отдельно указывать знак перпендикулярности не нужно, позиционный допуск вполне успешно управляет перпендикулярностью. Вообще по большому допуск формы со згнаком перпендикулярности имеет смысл исполльзовать только для стенок.         Буква "M" в круглешке = MMC =  Максимум материала - для отверстия означает, что это минимальный диаметр отверстия, для вала все наоборот.       Буква "L" в круглешке = LMC = Минимум материала - для отверстия означает, что это максимальный диаметр отверстия, для вала все наоборот.          Тема достаточно обширная, совсем кратко тут ответить не возможно. Очень много текста получилось, далее нужно описать, как теперь прочитать позиционные допуски 3х отвертий, ответом будет опять много букв, переварите это описание, напишите если нужно продолжение про отверстия, я допишу.    
    • FAHRENHEIT
      Ясно , никак не получу одну поверхность ,видимо мозгами никак не дойду ,как все это сделать , другой стратегией обойдемся 
    • Claus
      Обычно что понятно будет редактироваться ставишь переменную и меняешь ее хоть в сборке, остальное да в эскизе.
    • Krusnik
      Да я и не спорил об этом. Так оно и есть. И второй плюс - можно создавать ну ООООЧЕНЬ сложные эскизы. Оффтоп. Так вот в соседней теме как раз и спрашивали: как в ТФ создать другим способом...   В SW - да. Но для SW - это как почесать левой рукой правое ухо. Там легче просто выдавить по отдельности а потом в сборке добавить такую же взаимосвязь. Так в SW не будет циклических ссылок типа: сборка>модель детали>эскиз (в сборке, который управляет динамически)>сборка. А значит меньше тормозов и перестроений.
    • Ветерок
      А как изменить размеры в уже построенном и завершенном эскизе? Надо обязательно войти в редактирование эскиза? Или можно добраться до размеров, не входя в редактирование эскиза?
    • Claus
      Я обычно нажимаю правую кнопку и свойства, но кому как.
    • mechanical stranger
      Это как говорится дело вкуса и привычки, Вы пользуетесь тем с чем Вы работаете и к чему привыкли))  
    • Ветерок
      Как-то двойной щелчек не всегда срабатывает однозначно. Вот это очень бесит - не понимаешь что от чего происходит и каким образом что-то получилось, если вообще получилось. Чаще не получается. Да и по одинарному щелчку тоже каждый раз разный результат. И по ПКМ тоже. Когда что срабатывает понять не могу.
    • Krusnik
      Ну я не супер спец в ТФ. Там тыкаешь на линию, и в окне слева - то что было введено. 8/2 например. И также меняешь, скажем на 10/2.   Но на мой взгляд удобнее навводить параметров (D1, D2, D3 и т.д.). Когда строишь линии вводить D1/2, D2/2 и т.д. А потом в редакторе переменных менять эти самые D1, D2, D3... Там уже будут нормальные диаметры (5, 8, 10...)
    • Ветерок
      Ага. Попробовал. Остаётся. Это хорошо. Но добираться до неё всё равно очень неудобно.