У меня есть проблема с обнаружением моего изображения, которое, как все, что он всегда говорит, что его место .
Я попробовал в пакете ресурсов, в другом пакете, с полным путем, и все еще ничего, если. < /p>
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package game.objeto;
import java.awt.GradientPaint;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.geom.AffineTransform;
import java.net.URL;
import javax.swing.ImageIcon;
/**
*
* @author sousa
*/
public class Player {
public Player(){
this.image=new ImageIcon(getClass().getResource("resources/plane.png")).getImage();
this.image_speed=new ImageIcon(getClass().getResource("resources/plane_speed.png")).getImage();
}
public static final double PLAYER_SIZE=64;
private double x;
private double y;
private float angle=0f;
private final Image image;
private final Image image_speed;
public void changeAngle(float angle){
if(angle359){
angle=0;
}
this.angle=angle;
}
public void draw(Graphics2D g2){
AffineTransform oldTransform = g2.getTransform();
g2.translate(x, y);
g2.drawImage(image, 0,0,null);
g2.setTransform(oldTransform);
}
public double getX(){
return x;
}
public double getY(){
return y;
}
public float getAngle(){
return angle;
}
}
< /code>
и ошибка < /p>
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: Cannot invoke "java.net.URL.toExternalForm()" because "location" is null
at java.desktop/javax.swing.ImageIcon.(ImageIcon.java:232)
at game.objeto.Player.(Player.java:22)
at game.componentes.PanelGame.initObjectGame(PanelGame.java:74)
at game.componentes.PanelGame.start(PanelGame.java:69)
at game.main.Main$1.windowOpened(Main.java:35)
at java.desktop/java.awt.Window.processWindowEvent(Window.java:2082)
at java.desktop/javax.swing.JFrame.processWindowEvent(JFrame.java:298)
at java.desktop/java.awt.Window.processEvent(Window.java:2044)
at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4991)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4823)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
------------------------------------------------------------------------
У меня есть проблема с обнаружением моего изображения, которое, как все, что он всегда говорит, что его место . Я попробовал в пакете ресурсов, в другом пакете, с полным путем, и все еще ничего, если. < /p> [code]/* * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template */ package game.objeto;
public float getAngle(){ return angle; } } < /code> и ошибка < /p> Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: Cannot invoke "java.net.URL.toExternalForm()" because "location" is null at java.desktop/javax.swing.ImageIcon.(ImageIcon.java:232) at game.objeto.Player.(Player.java:22) at game.componentes.PanelGame.initObjectGame(PanelGame.java:74) at game.componentes.PanelGame.start(PanelGame.java:69) at game.main.Main$1.windowOpened(Main.java:35) at java.desktop/java.awt.Window.processWindowEvent(Window.java:2082) at java.desktop/javax.swing.JFrame.processWindowEvent(JFrame.java:298) at java.desktop/java.awt.Window.processEvent(Window.java:2044) at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4991) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324) at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4823) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714) at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) ------------------------------------------------------------------------ [/code] спасибо заранее
Я хочу сгладить изображение с формой (плоскостью), которую я нарисовал. Я рисую изображение самолета в Adobe AI и помещаю его в папку с ресурсами. Изображение выглядит так, как показано ниже.
Когда я использую эту строку кода
g2.drawImage(image,...
У меня возникла проблема с пользовательским изображением, отображаемым на JPanel с помощью Graphics2D. Если я попытаюсь нарисовать пиксель 1x1 для каждой ширины и длины панели x/y с помощью fillRect, это создаст в шаблоне кучу прямоугольников...
У меня возникла проблема с пользовательским изображением, отображаемым на JPanel с помощью Graphics2D. Если я попытаюсь нарисовать пиксель 1x1 для каждой ширины и длины панели x/y с помощью fillRect, это создаст в шаблоне кучу прямоугольников...
Я хочу нарисовать частично прозрачное изображение поверх другого (делая тени над вещами). В настоящее время я использую класс java Graphics2D для рендеринга, мне сказали установить композит на альфакомпозит, но это только устанавливает его полностью...
Я хочу написать программу на Java, которая будет отображать квадрат в позиции вашей мыши. Для этого я хотел нарисовать сетку в качестве фона, а затем добавить квадраты, но как только я добавляю новый компонент в JFrame, фон исчезает. Это также...