1
package org.opencv.core;
3
import java.util.Arrays;
6
public class MatOfFloat4 extends Mat {
8
private static final int _depth = CvType.CV_32F;
9
private static final int _channels = 4;
11
public MatOfFloat4() {
15
protected MatOfFloat4(long addr) {
17
if( !empty() && checkVector(_channels, _depth) < 0 )
18
throw new IllegalArgumentException("Incompatible Mat");
19
//FIXME: do we need release() here?
22
public static MatOfFloat4 fromNativeAddr(long addr) {
23
return new MatOfFloat4(addr);
26
public MatOfFloat4(Mat m) {
27
super(m, Range.all());
28
if( !empty() && checkVector(_channels, _depth) < 0 )
29
throw new IllegalArgumentException("Incompatible Mat");
30
//FIXME: do we need release() here?
33
public MatOfFloat4(float...a) {
38
public void alloc(int elemNumber) {
40
super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
43
public void fromArray(float...a) {
44
if(a==null || a.length==0)
46
int num = a.length / _channels;
48
put(0, 0, a); //TODO: check ret val!
51
public float[] toArray() {
52
int num = checkVector(_channels, _depth);
54
throw new RuntimeException("Native Mat has unexpected type or size: " + toString());
55
float[] a = new float[num * _channels];
58
get(0, 0, a); //TODO: check ret val!
62
public void fromList(List<Float> lb) {
63
if(lb==null || lb.size()==0)
65
Float ab[] = lb.toArray(new Float[0]);
66
float a[] = new float[ab.length];
67
for(int i=0; i<ab.length; i++)
72
public List<Float> toList() {
73
float[] a = toArray();
74
Float ab[] = new Float[a.length];
75
for(int i=0; i<a.length; i++)
77
return Arrays.asList(ab);