clear

С чистого листа

Вот и подошел к концу 2016 год. Как правило, все в конце очередного года подводят итоги и строят планы на будущий год. И я не исключение. 2016 был очень насыщенным годом. Было много разных встреч, мероприятий, знакомств. Какие-то моменты хочется запомнить надолго, некоторые — побыстрее забыть, но в целом этот год не получился для меня слишком особенным. В наступающем году хотелось бы это изменить. Думаю, почти для всех людей новый год...

Подробнее >>
java1

Java3D. Создание геометрии. Основы

Чтобы создать графический объект, нужно создать экземпляр класса Shape3D. Объекты этого класса могут быть только листьями в основном графе (scene graph). Сам объект Shape3D не содержит информации о форме или цвете графического объекта. Для задания ему этих свойств нужно связать его с соответствующим объектом NodeComponent. Объект Shape3D может быть связан с одним объектом Geometry и с одним Appearance. Shape3D () Shape3D (Geometry geometry) Shape3D (Geometry geometry, Appearance appearance) Геометрия и...

Подробнее >>
java1

Java3D. Добавление анимации

  Класс Behaviour определяет анимацию или интерактивность графическим объектам. Поведение (behaviour) может изменить любой атрибут графического объекта. После того, как поведение было определено для какого-то графического объекта, система Java3D обновляет позицию, ориентацию, цвет и другие атрибуты графического объекта автоматически. Проблема может быть в том, что может потребоваться много компьютерных ресурсов для того, чтобы отрендерить объекты и вместе с тем придавать им какое-то поведение. В Java3D эта проблема решается введением sheduling...

Подробнее >>
java1

Java3D. Основные классы

SimpleUniverse contructors (com.sun.j3d.utils.universe)  Класс настраивает пользовательскую среду для быстрого написания и запуска программы. Этот класс создает все необходимые объекты для branch graph. В особенности, этот класс создает Locale, VirtualUniverse, Viewing platform и Viewer objects (все с их значениями по умолчанию). SimpleUniverse (); //построение простой виртуальной вселенной SimpleUniverse (Canvas3D canvas3D); //построение виртуальной вселенной со ссылкой на canvas3D   ViewingPlatform setNominalViewingTransform () (com.sun.j3d.utils.universe) Класс ViewingPlatform используется для установки branch graph в объект...

Подробнее >>
java1

Java3D. Введение

Java3D — иерархия Java-классов, позволяющая работать с 3D-графикой. Набор объектов Java3D представляет виртуальную вселенную, которая впоследствии будет построена. Основные классы (core classes) расположены в пакете javax.media.j3d. Также существуют классы утилит (utility classes), которые находятся в пакете com.sun.j3d.utils. Они являются мощным дополнением к основным классам. Построение виртуальной вселенной (virtual universe) начинается с создания scene graph. Данный граф создается с помощью экземпляров классов Java3D. Эти экземпляры задают геометрию, звук, цвет, расположение, ориентацию и другие свойства объектов. Граф...

Подробнее >>
java1

Java. Регулярные выражения

Метасимволы:   ^     — (крышка, цирркумфлекс) начало проверяемой строки   $     — (доллар) конец проверяемой строки   .     — (точка) представляет собой сокращенную форму записи для символьного класса, совпадающего с любым символом   |     —  означает «или». Подвыражения, объединенные этим способом, называются альтернативами (alternatives)   ?     — (знак вопроса) означает, что предшествующий ему символ является необязательным   +     —  обозначает «один или несколько экземпляров...

Подробнее >>
java1

Java. GUI. Основы Swing

Swing — библиотека, состоящая из обширной коллекции компонентов JavaBean, которые используются для построения графического интерфейса. Прямые взаимодействия с компонентами GUI из метода main () нежелательны, так как Swing создает отдельный программный поток для получения событий пользовательского интерфейса и обновления экрана. Другие потоки должны передавать выполняемые задачи потоку диспетчеризации событий Swing. Задача передается методу SwingUtilities.invokeLater (), который помещает ее в очередь событий для выполнения потоком диспетчеризации событий Вместо прямого обращения к JLabel мы...

Подробнее >>
java1

Java. Параллельное выполнение. Часть 1

Многозадачность — возможность одновременного выполнения нескольких задач. Многопоточность — распараллеливание выполнения программы в рамках одной задачи (в одном процессе и его адресном пространстве памяти). Процесс - самостоятельная программа, выполняемая в собственном адресном пространстве. Поток (thread) - выполняемая параллельно в рамках процесса последовательность команд программы. Каждый поток считает, что он использует процессор монопольно, но на самом деле время процессора разделяется между всеми существующими в программе потоками (кроме случаев, когда программа действительно использует несколько процессоров).  ...

Подробнее >>
java1

Java. Динамические прокси-классы

Динамический прокси-класс — класс, реализующий все интерфейсы некоторого класса, но заменяющий вызов всех методов этих интерфейсов на вызов метода InvocationHandler#invoke (), где InvocationHandler — интерфейс JVM, для которого можно определять свои реализации. Чтобы создать прокси-класс, нужно вызвать метод Proxy.getProxyClass (), который принимает загрузчик класса и массив интерфейсов, а возвращает объект класса java.lang.Class, который загружен с помощью переданного загрузчика класса и реализует переданный массив интерфейсов.   Ограничения на параметры: Все объекты в массиве интерфейсов должны...

Подробнее >>