Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Меняем местами подэлементы двумерного массиваСодержание книги
Поиск на нашем сайте Задача: поменять в двумерном массиве числа A и B местами Меняем трёхэтапным способом
Arr=# (# (13, 31, 59), # (13, 32, 60), # (13, 35, 58), # (13, 36, 68), # (13, 31, 58), # (13, 32, 59), # (13, 35, 68), # (13, 36, 60)) Листенер вернёт: #(#(58, 31, 59), #(58, 32, 60), #(58, 35, 13), #(58, 36, 68), #(58, 31, 13), #(58, 32, 59), #(58, 35, 68), #(58, 36, 60)) _______________________________________________________________ Немного логики и интересный способ присвоения значений переменным. a=0 --эту переменную надо обязательно объявить, иначе код не будет работать tmp = (-- переменная tmp не была объявлена, поэтому пока её значение undefined a+=1 -- это то же самое что и a=a+1 1 -- /*просто любая цифра, которая вернётся в листенер и присвоится переменной tmp*/ ) tmp==1 -- проверяем, tmp есть 1? -- Листенер вернет true
А вот такой же пример, но с маленькими изменениями a=0 tmp = ( a+=1 off -- булевое значение, тоже самое что и false ( on соответствует true) ) tmp==false -- Проверяем, переменная имеет значение false? -- Листенер вернёт true В общем на последнюю линию в блоке можно ставить всё что угодно, чему мы хотим, чтобы равнялась переменная, которой приравнивается блок _______________________________________________________________ Работа с внешним текстовым файлом
Просьба дополнить по-возможности: Как удалять строку (или узнать длину строки), как записывать текст на кириллице
Основные операции с файлом --Создание текстового файла "test.txt" в корне диска "С"
Примечание: Файл обязательно нужно закрывать командой "close", после открытия/создания и редактирования, иначе могут возникнуть проблемы с редактированием и удалением файла (пока не будет закрыт 3ds Max)
Создание нового файла Примечание: кириллица не записывается в файл. Все примеры ниже, использованы в целях лучшего понимания. --Запись текста в конце строки format "Какой-то текст" to:f Результат повторного выполнения: "Какой-то текстКакой-то текст"
--Переход на следующую строку "\n" (Например: format "Какой-то текст\n" to:f) Результат повторного выполнения: "Какой-то текст Какой-то текст"
--Пример кода полностью: f = createFile "C: \\ test.txt"
Результат: The second line Line #3 Line #4 Line #5 Line #6”
3) Открытие файла: f = openFile "C: \\ test.txt" mode:"r+"
Есть множество режимов открытия файла (mode:) Основные: r - чтение rt - чтение текста rb - чтение как бинарный код r+ - чтение и запись (с сохранением содержимого) w - запись wt - запись текста (все содержимое удаляется) wb - запись бинарного кода (все содержимое удаляется) w+ - чтение/запись текста (все содержимое удаляется) Внимание! эти атрибуты добавляются с кавычками, как строковые значения! --Количество символов в файле:
Примеры кода полностью. --Замена символов текстом "999999" в третьей позиции:
Результат: "The999999 line"
--Вставка текста"999999" в третью позицию, без замены: --(Допустим, в файле есть всего одна строка "The first line") f = openFile "C: \\ test.txt" mode:"r+"
Результат: "The999999 first line"
-- Если файла по указанному пути не существует, то создать его fPath=”c:\\tmp.txt”
Если файл существует, и надо добавлять в него данные, то: f = openFile fPath mode:"a" -- файл открывается и готов к изменению, об этом говорит параметр “а” format (“tmp” + \n) to:f -- печатать в файле строку “tmp” и перейти на следующую строку. close f
Пример работы с файлами, скрипт выполняет чтение из файла вершин и выделяет их в объекте сцены 3dsMax (
Единственно, что последняя строчка кода почему то не срабатывает и файл остаётся занят. _______________________________________________________________ Если скрипт выполняет то что нужно, но в каких-то ситуациях выдаёт ошибки, то можно их скрыть вот таким параметром, задаваемым в шапке макроскрипта. macroScript UserScriptName category:"NewTools" tooltip:"toolName" silentErrors: true Ну или можно локально сам код организовать с помощью конструкции перехвата ошибокtry () Catch (), по русски это можно понять как try - пробовать выполнить () Catch если возникнет ошибка, тогда выполнять () Если при ошибке делать ничего не нужно, то Catch() так и остаётся с пустыми скобками. _______________________________________________________________
|
||
|
Последнее изменение этой страницы: 2021-04-13; просмотров: 102; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.236 (0.006 с.) |