Последние новости

Новые статьи

План для создания программ для андроид

Android

Здравствуйте, меня зовут Сергей Самоделкин, я изучаю язык программирования для андроид-устройств. Составил план для разработки программ для андроид-устройств, который упростит и ускорит разработку любой программы и хочу поделиться с вамми. Перейдем к плану. Итак все что надо для плана- листок бумаги и пишущий инструмент, например, ручка или карандаш.
Продолжить

Рейтинг:  2  (За: 8 | Против: 6)
Добавлено: 27.03.2014 от samodelkin

Комментарии (7)

Быстрое создание 2D ландшафта

GameDev  java

При написании некоторых игр возникает необходимость создать холмистый ландшафт. Есть множество различных алгоритмов таких как, например, разбиение пополам: берётся прямая линия на всю ширину игровой области, затем берётся середина этой линии и поднимается или опускается на некоторую величину. Затем полученные две линии снова делятся пополам и изменяются на некоторую величину в центральной точке и так до тех пор, пока размер разделённой пополам линии не достигнет какого-то предела, обычно в один пиксель.

Но есть и более простой и быстрый способ генерирования 2D ландшафта.
Создаём массив размером с ширину игровой области.
int[] blockHeights = new int[width];
Определяем максимальную высоту, чтобы земля не вышла за пределы экрана.
int maxHeight = height / 2;
Рассчитываем
Продолжить

Рейтинг:  11  (За: 11 | Против: 0)
Добавлено: 15.03.2014 от aNNiMON

Комментарии (11)

ООП в примерах. Часть 4. Интерфейсы, повторное использование

Совершенный код  ооп, java me, java

Продолжим наше изучение ООП. Давайте создадим сущность Меню и обернём её вокруг наших пунктов, то есть перенесём всё, что касается меню в отдельный класс Menu.
Позиция курсора (int cursor), массив с пунктами меню (MenuItem[] items), отрисовка, обработка клавиш теперь будет в классе Menu. Menu.java
Вместо массива я добавил Vector, чтобы можно было динамически добавлять элементы.

Теперь класс Canvas будет ещё проще:
  1. public class OopMenu5 extends Canvas {
  2.  
  3.     private final int width, height;
  4.     private Menu menu;
  5.  
  6.     public OopMenu5() {
  7.         setFullScreenMode(true);
  8.         width = getWidth();
  9.         height = getHeight();
  10.  
  11.         menu = new Menu();
  12.         menu.addMenuItem("Start", "start.png");

Продолжить

Рейтинг:  6  (За: 7 | Против: 1)
Добавлено: 7.02.2014 от aNNiMON

Комментарии (24)

ООП в примерах. Часть 3. Переопределение методов, уровни абстракции

Совершенный код  ооп, java me, java

Пункт меню должен рисоваться на экране. Так почему бы нам не добавить метод отрисовки сразу в класс MenuItem и в его классы-потомки? Передадим этому методу все нужные нам параметры и будем рисовать.
  1. public class MenuItem {
  2.  
  3.     protected static final Font ITEM_FONT = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN, Font.SIZE_MEDIUM);
  4.     protected static final int ITEM_HEIGHT = ITEM_FONT.getHeight() + 5;
  5.  
  6.     protected String name;
  7.  
  8.     public MenuItem(String name) {
  9.         this.name = name;
  10.     }
  11.  
  12.     public String getName() {
  13.         return name;
  14.     }
  15.  
  16.     public void paint(Graphics g, int startY, int itemIndex) {
  17.         g.setFont(ITEM_FONT);
  18.         g.setColor(0xFF095E15);
  19.         g.drawString(name, g.getClipWidth() / 2, startY + ITEM_HEIGHT

Продолжить

Рейтинг:  8  (За: 9 | Против: 1)
Добавлено: 6.02.2014 от aNNiMON

Комментарии (23)

ООП в примерах. Часть 2. Наследование

Совершенный код  ооп, java me, java

Продолжаем осваивать ООП.

Разберёмся с наследованием.
Наследование позволяет взять доступные свойства родительского (базового) класса и использовать их в производных (потомках).
Сразу пример.
Вернём наш класс пункта меню в первоначальный вид:
  1. public class MenuItem {
  2.  
  3.     private String name;
  4.  
  5.     public MenuItem(String name) {
  6.         this.name = name;
  7.     }
  8.  
  9.     public String getName() {
  10.         return name;
  11.     }
  12. }
Теперь давайте создадим производный класс с цветом пункта меню:
  1. public class ColorMenuItem extends MenuItem {
  2.  
  3.     private int color;
  4.  
  5.     public ColorMenuItem(String name, int color) {
  6.         super(name);
  7.         this.color = color;
  8.     }
  9.  
  10.     public int getColor() {
  11.         return color;
  12.     }
  13. }
Первое,
Продолжить

Рейтинг:  5  (За: 6 | Против: 1)
Добавлено: 6.02.2014 от aNNiMON

Комментарии (0)
<< 1 ... 42 43 44 45 46 47 >>

Мы в соцсетях

tw tg yt gt