Модераторы: javastic, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Спрайты, нужна помощь! 
:(
    Опции темы
Samuil
  Дата 28.10.2006, 23:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


в(Job)ываю
**


Профиль
Группа: Участник
Сообщений: 705
Регистрация: 26.4.2006
Где: Uzbekistan.Tashke nt

Репутация: 5
Всего: 6



Привет народ! Есть проблема: не смог найти инфу по использованию спрайтов в приложении smile 
Может кто дать ссылку или показать на примере как сделать чтобы прога могла порезав одно изображение на части использовать эти изображения в проге, ну в общем спрайты


--------------------
Выбор уже сделан, остается его только осознать   
smile    smile 
      smile  

user posted image
PM MAIL ICQ   Вверх
W0LF
Дата 29.10.2006, 15:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


alexander lonsky
***


Профиль
Группа: Участник
Сообщений: 1164
Регистрация: 9.2.2006
Где: Ukraine.Dnepropet rovsk

Репутация: 19
Всего: 20



хм... 
1. Есть 
Код

javax.microedition.lcdui.game.Sprite

2. MIDP2.0 
Код

javax.microedition.lcdui.Image
  
метод
Код

createImage(Image image, int x, int y, int width, int height, int transform)

Creates an immutable image using pixel data from the specified region of a source image, transformed as specified.
3. MIDP1.0
Код

javax.microedition.lcdui.Graphics

методы
Код

setClip(int x, int y, int width, int height) 
clipRect(int x, int y, int width, int height) 

на том, на чем будешь рисовать(твой Graphics) выделяешь одним из двух методов области, в которые можно будет рисовать. Все остальное они будут обрезать. так вот - в них с определенным смещением рисуй свою картинку и все.


--------------------
iOS developer
PM MAIL WWW Skype GTalk   Вверх
Samuil
Дата 29.10.2006, 16:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


в(Job)ываю
**


Профиль
Группа: Участник
Сообщений: 705
Регистрация: 26.4.2006
Где: Uzbekistan.Tashke nt

Репутация: 5
Всего: 6



Спасибо Wolf!


--------------------
Выбор уже сделан, остается его только осознать   
smile    smile 
      smile  

user posted image
PM MAIL ICQ   Вверх
kapi
Дата 30.10.2006, 17:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 16.8.2006

Репутация: 1
Всего: 1



можеш попробовать мой класс Спрайта, а то ведь оригинальный Sprite только в midp 2 smile
Код

import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.Graphics;

/**
 * Created by IntelliJ IDEA.
 * User: vmishenko
 * Date: 26.07.2006
 * Time: 16:57:18
 * To change this template use File | Settings | File Templates.
 */
public class SpriteMy {
    private int cordX = 0;
    private int cordY = 0;
    protected int frameW;
    protected int frameH;
    private int framesNumber;
    private int currentFrameNo = 1;
    private Image sprite ;
    private int headX =cordX;
    private int headY =cordY ;
    private Quiz  q;
/*----------------------------------------------------------------------------------------------*/
    public SpriteMy(){}
/*----------------------------------------------------------------------------------------------*/
    public SpriteMy(Image im,int w, int h, Quiz midlet){
        this.q = midlet;
        this.sprite = Image.createImage(im);
        this.frameW = w;
        this.frameH = h;
        this.framesNumber = (im.getHeight()==h?
                (im.getWidth()/w):(im.getHeight()/h));

        System.out.println("Frames # ="+framesNumber);
    }
/*----------------------------------------------------------------------------------------------*/
    void setLocation(int x, int y){
        this.cordX = x;
        this.cordY = y;
        headX =cordX;
        headY =cordY ;
    }
/*----------------------------------------------------------------------------------------------*/
    void paint(Graphics g){
        g.setClip(cordX,cordY,frameW,frameH);
        g.drawImage(this.sprite,headX,headY,Graphics.TOP|Graphics.LEFT);
        g.setClip(0,0,q.canvasW,q.canvasH);
        g.setColor(0xffffff);
        g.drawRect(cordX,cordY,frameW,frameH);
    }
/*----------------------------------------------------------------------------------------------*/
    void nextFrame(){
        headX = headX - frameW;
        currentFrameNo ++;
        if (currentFrameNo > framesNumber){
            headX = cordX;
            currentFrameNo = 1;
        }
    }
/*----------------------------------------------------------------------------------------------*/
    void prevFrame(){
        headX = headX + frameW;
        currentFrameNo --;
        if (currentFrameNo < 1){
            currentFrameNo = framesNumber;
            headX = cordX - (framesNumber-1) * frameW;
        }
    }
/*----------------------------------------------------------------------------------------------*/    
}



PM MAIL   Вверх
Samuil
Дата 31.10.2006, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


в(Job)ываю
**


Профиль
Группа: Участник
Сообщений: 705
Регистрация: 26.4.2006
Где: Uzbekistan.Tashke nt

Репутация: 5
Всего: 6



kapi, И тебе Спасибо обязательно попробую smile 


--------------------
Выбор уже сделан, остается его только осознать   
smile    smile 
      smile  

user posted image
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

  • Прежде чем задать вопрос прочтите это!
  • Литература по Java находится здесь.
  • Литературу по Java обсуждаем здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда

  • FAQ раздела лежит здесь!
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java ME (J2ME) | Следующая тема »


 




[ Время генерации скрипта: 0.0958 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.