(Ganesh Tiwari) gt_ebuddy's Blog - Code snippets, technical articles, tips on computing and programming...
Showing posts with label java. Show all posts
Showing posts with label java. Show all posts
nepali english date conversion logic - working java code
I just found someone has blogged about Nepali-English date conversion in this post:
http://forjavaprogrammers.blogspot.com/2012/06/how-to-convert-english-date-to-nepali.html
He has explained the algorithm in detail about how to convert English dates into Nepali dates with java code.
java spring - read properties file variable from xml -PropertyPlaceholderConfigurer
Java springframework xml configuration file - how to read properties file variables from spring xml :
We have to use PropertyPlaceholderConfigurer bean for this.
We have to use PropertyPlaceholderConfigurer bean for this.
1).properties file location -
- src/main/resource @ maven managed project
- OR at classpath
2)The xml code to initialize/read properties file,
hibernate annotation inheritance mappedsuperclass - common columns in super class
When you are using annotations for hibernate object relational mapping, there might be the case that we need to abstract out some common columns that goes into all table definitions. These columns might be ID, DFlag, LastModifiedDate etc..
In such case we can take advantage of @MappedSuperclass annotation to achieve inheritance in hibernate annotation.
Example :
It works !
In such case we can take advantage of @MappedSuperclass annotation to achieve inheritance in hibernate annotation.
Example :
Super class BaseTable that contains common column definitions:
@MappedSuperclass
public abstract class BaseTable {
@Id
@GeneratedValue
@Column(name = "id")
private int id;
@Column(name = "dflag")
private int dFlag;
@Column(name = "lastmodifieddate")
private Date lastModifiedDate;
//other required columns
....
}
Extending it to use in other tables :
@Entity
@Table(name = "LoginUser")
public class LoginUser extends BaseTable implements Serializable{
private static final long serialVersionUID = -1920053571118011085L;
@Column(name = "username")
private String username;
@Column(name = "password")
private String password;
@Column(name = "invalidCount")
private int invalidCount;
//other required tables
...
}
It works !
mysql hibernate unicode support - character set, collate
I just did following configurations to achieve Unicode support in my Java+Hibernate+MySQL project.
Configuring MySQL to support Unicode - set Character Set and Collate as :
Hibernate JDBC connection string :
Hibernate Configuration:
Configuring MySQL to support Unicode - set Character Set and Collate as :
CREATE TABLE YOUR_DB_NAME
CHARACTER SET "UTF8"
COLLATE "utf8_general_ci";
NOTE : You Need to do "ALTER TABLE" instead of "CREATE TABLE",
if you are going to modify existing DB.
Hibernate JDBC connection string :
jdbc.url=jdbc:mysql://localhost:3306/YOUR_DB_NAME?useUnicode=true&characterEncoding=UTF-8
Hibernate Configuration:
<hibernate-configuration>
<session-factory>
...
<property name="hibernate.connection.charSet">UTF-8</property>
<property name="hibernate.connection.characterEncoding">UTF-8</property>
<property name="hibernate.connection.useUnicode">true</property>
...
</session-factory>
</hibernate-configuration>
Java code to find public IP address (servlet and client side code)
Java code to find public IP address :
URL url= new URL("http://gt-tests.appspot.com/ip");
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
String ip = in.readLine();
System.out.println("IP : "+ip);
I created a simple servlet app on google app engine and posted at http://gt-tests.appspot.com/ip .
The servlet code returns the public address of client, it looks like :
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
PrintWriter out = resp.getWriter();
// Get client's IP address
String addr = req.getRemoteAddr();
out.println(addr);
...
eclipse proguard maven project configuration - java obfuscate
I am going to describe how can can configure proguard and maven to obfuscate a java project. If you need help on how to configure maven project in eclipse see my earlier post.
A)Project configs
A)Project configs
<!-- Project configs -->
<modelVersion>4.0.0</modelVersion>
<groupId>com.gt</groupId>
<artifactId>maven-proguard-test</artifactId>
<packaging>jar</packaging>
<version>-ver.01</version>
<name>maven-proguard-test-application</name>
<properties>
<project.build.mainClass>com.gt.App</project.build.mainClass>
</properties>
Speech Recognition Java Code - HMM VQ MFCC ( Hidden markov model, Vector Quantization and Mel Filter Cepstral Coefficient)
Hi everyone, I have shared speech recognition code in google code : http://code.google.com/p/speech-recognition-java-hidden-markov-model-vq-mfcc/
You can find complete source code for speech recognition using HMM, VQ, MFCC ( Hidden markov model, Vector Quantization and Mel Filter Cepstral Coefficient). Feel free to use and modify this code.
The project report that accompanies this code is here.http://ganeshtiwaridotcomdotnp.blogspot.com/2011/06/final-report-text-prompted-remote.html
Introduction to the project : http://ganeshtiwaridotcomdotnp.blogspot.com/2010/12/text-prompted-remote-speaker.html
You can find complete source code for speech recognition using HMM, VQ, MFCC ( Hidden markov model, Vector Quantization and Mel Filter Cepstral Coefficient). Feel free to use and modify this code.
The project report that accompanies this code is here.http://ganeshtiwaridotcomdotnp.blogspot.com/2011/06/final-report-text-prompted-remote.html
Introduction to the project : http://ganeshtiwaridotcomdotnp.blogspot.com/2010/12/text-prompted-remote-speaker.html
simple ball game by colored object motion tracking - image processing opencv javacv
DEMO VIDEO: simple ball game by colored object motion tracking - using javacv opencv to detect the path of moving object. This is earliest version of the game.
Full Code :
Java Collision Detection and bounce
You need to integrate the ideas from above links.
The full (integrated code will be uploaded shortly)
Full Code :
Java Collision Detection and bounce
Colored object tracking in java- javacv code
You need to integrate the ideas from above links.
The full (integrated code will be uploaded shortly)
Object tracking in Java - detect position of colored spot in image
| Red spot in image - position to be detected later |
Input image :
This image has a red colored spot. And our objective is to track the position coordinate of the spot in image.The example below uses thresholding in HSV space and simple moment calculations given in OpenCV library.
You can use this code to track an object in a video sequence - say live web-cam capture video.
- The code for capturing webcam using JavaCV is here.
- Help on Configuring a JavaCV project in Eclipse+windows is here.
Detecting Position of a spot in Threshold image:
static Dimension getCoordinates(IplImage thresholdImage) {
int posX = 0;
int posY = 0;
Java Sound : audio inputstream from pcm amplitude array
In this post, i am going to show the code for creating the AudioInputStream from an PCM - amplitude array. It basically converts the int [] array to byte array according to AudioFormat.
The code for the reverse operation (extract amplitude array from recorded wave file or AudioStream )is in my earlier post : http://ganeshtiwaridotcomdotnp.blogspot.com/2011/12/java-extract-amplitude-array-from.html
The code for converting PCM amplitude array to AudioStream is follows :
The code for the reverse operation (extract amplitude array from recorded wave file or AudioStream )is in my earlier post : http://ganeshtiwaridotcomdotnp.blogspot.com/2011/12/java-extract-amplitude-array-from.html
The code for converting PCM amplitude array to AudioStream is follows :
Java Sound : generate play sine wave - source code
Working source code example on how to generate and play sine wave in Java :
View my previous post for playing any PCM amplitude array.
Generate Sine wave of a particular frequency :
View my previous post for playing any PCM amplitude array.
Generate Sine wave of a particular frequency :
private static byte[] generateSineWavefreq(int frequencyOfSignal, int seconds) {
// total samples = (duration in second) * (samples per second)
byte[] sin = new byte[seconds * sampleRate];
double samplingInterval = (double) (sampleRate / frequencyOfSignal);
System.out.println("Sampling Frequency : "+sampleRate);
System.out.println("Frequency of Signal : "+frequencyOfSignal);
System.out.println("Sampling Interval : "+samplingInterval);
for (int i = 0; i < sin.length; i++) {
double angle = (2.0 * Math.PI * i) / samplingInterval;
sin[i] = (byte) (Math.sin(angle) * 127);
System.out.println("" + sin[i]);
}
Java Audio : Playing PCM amplitude Array
How to play a array of PCM amplitude values (integer or float array) in Java - Steps
Basic Steps :
Converting integer array to bytearray :
We need to convert our PCM array to byteArray because the line.write requires byte[] b as parameter.
Basic Steps :
//initialize source data line - for playback
SourceDataLine line = AudioSystem.getSourceDataLine(audioFormat);
line.open(audioFormat);
line.start();
//play the byteArray
line.write(byteArray, 0, byteArray .length);//(byte[] b, int off, int len)
line.drain();
line.close();
Converting integer array to bytearray :
We need to convert our PCM array to byteArray because the line.write requires byte[] b as parameter.
Java extract amplitude array from recorded wave
Extract amplitude array from recorded/saved wav : From File , AudioInputStream , ByteArray of File or ByteArrayInputStream - working java source code example
import java.io.ByteArrayInputStream;
import java.io.File;
Sound (audio file) player in java - working source code example
Sound (audio file) player in java - working source code example
import java.io.File;
import java.io.IOException;
import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.DataLine;
Java Sound Capture from Microphone working code
Sound Capture / Record from Microphone and Save : working java source code example
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.DataLine;
import javax.sound.sampled.TargetDataLine;
/**
* Reads data from the input channel and writes to the output stream
*/
public class MicrophoneRecorder implements Runnable {
// record microphone && generate stream/byte array
private AudioInputStream audioInputStream;
Java Reflection - Getting name of color without comparision
In this tutorial I am describing how get value of field/ property defined in class dynamically using Java Reflection.
And i am using it to get name of color (java.awt.Color) using Reflection.
Instead of doing lengthy comparison (shown below), we can do this easily by using java reflection:
Getting name of color by Comparision
One solution to get name of color may be by comparison like this :
And i am using it to get name of color (java.awt.Color) using Reflection.
Instead of doing lengthy comparison (shown below), we can do this easily by using java reflection:
public static String getNameReflection(Color colorParam) {
try {
//first read all fields in array
Field[] field = Class.forName("java.awt.Color").getDeclaredFields();
for (Field f : field) {
String colorName = f.getName();
Class<?> t = f.getType();
// System.out.println(f.getType());
// check only for constants - "public static final Color"
if (t == java.awt.Color.class) {
Color defined = (Color) f.get(null);
if (defined.equals(colorParam)) {
System.out.println(colorName);
return colorName.toUpperCase();
}
}
}
} catch (Exception e) {
System.out.println("Error... " + e.toString());
}
return "NO_MATCH";
}
Getting name of color by Comparision
One solution to get name of color may be by comparison like this :
public static String getNameByComparision(Color color) {
if (color.equals(Color.RED)) {
return "RED";
}
if (color.equals(Color.BLACK)) {
return "BLACK";
}
// ..
return "NOT_DEFINED";
}
Java: Screen Capture using Robot and save
Robot : java.awt.Robot is used to take control of the mouse and keyboard. It is used for test automation, self-running demos and screen capture at various state of execution of the program.Java Code for detecting screen size and capturing whole screen using Robot and saving :
Java Collision Detection and bounce - Complete example source code download
Complete example of simple collision detection and bounce between circle-circle and ball-rectangular wall.
Download Full source code : - Can be used in building simple games
Similar posts with little explanations :
![]() |
| java collision detection |
Similar posts with little explanations :
Java Collision Detection and bounce- two circles collision and response
Collision detection between two circles and their response - Java source code - working
public static void intersect(Ball a, Ball b) {
//ref http://gamedev.stackexchange.com/questions/20516/ball-collisions-sticking-together
double xDist, yDist;
xDist = a.x - b.x;
yDist = a.y - b.y;
double distSquared = xDist * xDist + yDist * yDist;
// Check the squared distances instead of the the distances, same
// result, but avoids a square root.
if (distSquared <= (a.radius + b.radius) * (a.radius + b.radius)) {
double speedXocity = b.speedX - a.speedX;
double speedYocity = b.speedY - a.speedY;
double dotProduct = xDist * speedXocity + yDist * speedYocity;
// Neat vector maths, used for checking if the objects moves towards
// one another.
if (dotProduct > 0) {
double collisionScale = dotProduct / distSquared;
double xCollision = xDist * collisionScale;
double yCollision = yDist * collisionScale;
// The Collision vector is the speed difference projected on the
// Dist vector,
// thus it is the component of the speed difference needed for
// the collision.
double combinedMass = a.getMass() + b.getMass();
double collisionWeightA = 2 * b.getMass() / combinedMass;
double collisionWeightB = 2 * a.getMass() / combinedMass;
a.speedX += (collisionWeightA * xCollision);
a.speedY += (collisionWeightA * yCollision);
b.speedX -= (collisionWeightB * xCollision);
b.speedY -= (collisionWeightB * yCollision);
}
}
}
Java Collision Detection and bounce - Circle and rectangle
Collision detection between circle(any object) and rectangular wall is simple.
For collision detection we simply compare the distances. And if collision between ball and wall is detected, we change the directions of their speeds for bouncing the ball.
Here is the code:
For collision detection we simply compare the distances. And if collision between ball and wall is detected, we change the directions of their speeds for bouncing the ball.
Here is the code:
Subscribe to:
Posts (Atom)
