/**
* Gets all the particle analysis reports ordered from largest area to
* smallest.
*
* @param size The number of particles to return
* @return An array of ParticleReports from largest area to smallest
*/
public ParticleAnalysisReport[] getorderedParticleAnalysisReports(int size)
throws NIVisionException {
if (size > getNumberParticles())
size = getNumberParticles();
ParticleSizeReport[] reports = new ParticleSizeReport[size];
SortedVector sorter = new SortedVector(new SortedVector.Comparator() {
public int compare(Object object1,Object object2) {
ParticleSizeReport p1 = (ParticleSizeReport) object1;
ParticleSizeReport p2 = (ParticleSizeReport) object2;
if (p1.size < p2.size)
return -1;
else if (p1.size > p2.size)
return 1;
return 0;
}
});
for (int i = 0; i < getNumberParticles(); i++)
sorter.addElement(new ParticleSizeReport(i));
sorter.setSize(size);
sorter.copyInto(reports);
ParticleAnalysisReport[] finalReports = new ParticleAnalysisReport[reports.length];
for (int i = 0; i < finalReports.length; i++)
finalReports[i] = reports[i].getParticleAnalysisReport();
return finalReports;
}
项目:wpilibj
文件:BinaryImage.java
/**
* Gets all the particle analysis reports ordered from largest area to smallest.
* @param size The number of particles to return
* @return An array of ParticleReports from largest area to smallest
*/
public ParticleAnalysisReport[] getorderedParticleAnalysisReports(int size) throws NIVisionException{
if (size > getNumberParticles())
size = getNumberParticles();
ParticleSizeReport[] reports = new ParticleSizeReport[size];
SortedVector sorter = new SortedVector(new SortedVector.Comparator() {
public int compare(Object object1,Object object2) {
ParticleSizeReport p1 = (ParticleSizeReport)object1;
ParticleSizeReport p2 = (ParticleSizeReport)object2;
if (p1.size < p2.size)
return -1;
else if (p1.size > p2.size)
return 1;
return 0;
}
});
for (int i = 0; i < getNumberParticles(); i++)
sorter.addElement(new ParticleSizeReport(i));
sorter.setSize(size);
sorter.copyInto(reports);
ParticleAnalysisReport[] finalReports = new ParticleAnalysisReport[reports.length];
for (int i = 0; i < finalReports.length; i++)
finalReports[i] = reports[i].getParticleAnalysisReport();
return finalReports;
}
项目:wpilib-java
文件:BinaryImage.java
/**
* Gets all the particle analysis reports ordered from largest area to smallest.
* @param size The number of particles to return
* @return An array of ParticleReports from largest area to smallest
*/
public ParticleAnalysisReport[] getorderedParticleAnalysisReports(int size) throws NIVisionException{
if (size > getNumberParticles())
size = getNumberParticles();
ParticleSizeReport[] reports = new ParticleSizeReport[size];
SortedVector sorter = new SortedVector(new SortedVector.Comparator() {
public int compare(Object object1,Object object2) {
ParticleSizeReport p1 = (ParticleSizeReport)object1;
ParticleSizeReport p2 = (ParticleSizeReport)object2;
if (p1.size < p2.size)
return -1;
else if (p1.size > p2.size)
return 1;
return 0;
}
});
for (int i = 0; i < getNumberParticles(); i++)
sorter.addElement(new ParticleSizeReport(i));
sorter.setSize(size);
sorter.copyInto(reports);
ParticleAnalysisReport[] finalReports = new ParticleAnalysisReport[reports.length];
for (int i = 0; i < finalReports.length; i++)
finalReports[i] = reports[i].getParticleAnalysisReport();
return finalReports;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。