当前位置: 首页>>代码示例>>Java>>正文


Java PointVectorStrategy类代码示例

本文整理汇总了Java中org.apache.lucene.spatial.vector.PointVectorStrategy的典型用法代码示例。如果您正苦于以下问题:Java PointVectorStrategy类的具体用法?Java PointVectorStrategy怎么用?Java PointVectorStrategy使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


PointVectorStrategy类属于org.apache.lucene.spatial.vector包,在下文中一共展示了PointVectorStrategy类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testEqualsHashCode

import org.apache.lucene.spatial.vector.PointVectorStrategy; //导入依赖的package包/类
@Test
public void testEqualsHashCode() {

  final SpatialPrefixTree gridQuad = new QuadPrefixTree(ctx,10);
  final SpatialPrefixTree gridGeohash = new GeohashPrefixTree(ctx,10);

  Collection<SpatialStrategy> strategies = new ArrayList<>();
  strategies.add(new RecursivePrefixTreeStrategy(gridGeohash, "recursive_geohash"));
  strategies.add(new TermQueryPrefixTreeStrategy(gridQuad, "termquery_quad"));
  strategies.add(new PointVectorStrategy(ctx, "pointvector"));
  strategies.add(new BBoxStrategy(ctx, "bbox"));
  strategies.add(new SerializedDVStrategy(ctx, "serialized"));
  for (SpatialStrategy strategy : strategies) {
    testEqualsHashcode(strategy);
  }
}
 
开发者ID:europeana,项目名称:search,代码行数:17,代码来源:QueryEqualsHashCodeTest.java

示例2: inform

import org.apache.lucene.spatial.vector.PointVectorStrategy; //导入依赖的package包/类
@Override
public void inform(IndexSchema schema) {
  FieldType fieldType = schema.getFieldTypeByName(numberFieldName);
  if( fieldType == null ) {
    throw new RuntimeException( "Can not find number field: "+ numberFieldName);
  }
  //TODO support other numeric types in the future
  if( !(fieldType instanceof TrieDoubleField) ) {
    throw new RuntimeException( "field type must be TrieDoubleField: "+ fieldType);
  }
  precisionStep = ((TrieField)fieldType).getPrecisionStep();

  //Just set these, delegate everything else to the field type
  final int p = (INDEXED | TOKENIZED | OMIT_NORMS | OMIT_TF_POSITIONS);
  List<SchemaField> newFields = new ArrayList<SchemaField>();
  for( SchemaField sf : schema.getFields().values() ) {
    if( sf.getType() == this ) {
      String name = sf.getName();
      newFields.add(new SchemaField(name + PointVectorStrategy.SUFFIX_X, fieldType, p, null));
      newFields.add(new SchemaField(name + PointVectorStrategy.SUFFIX_Y, fieldType, p, null));
    }
  }
  for (SchemaField newField : newFields) {
    schema.getFields().put(newField.getName(), newField);
  }
}
 
开发者ID:pkarmstr,项目名称:NYBC,代码行数:27,代码来源:SpatialPointVectorFieldType.java

示例3: inform

import org.apache.lucene.spatial.vector.PointVectorStrategy; //导入依赖的package包/类
/**
 * Adds X and Y fields to the given schema for each field with this class as its field type.
 * 
 * {@inheritDoc}
 * 
 * @param schema {@inheritDoc}
 *
 */
@Override
public void inform(IndexSchema schema) {
  FieldType fieldType = schema.getFieldTypeByName(numberFieldName);
  if( fieldType == null ) {
    throw new RuntimeException( "Can not find number field: "+ numberFieldName);
  }
  //TODO support other numeric types in the future
  if( !(fieldType instanceof TrieDoubleField) ) {
    throw new RuntimeException( "field type must be TrieDoubleField: "+ fieldType);
  }
  precisionStep = ((TrieField)fieldType).getPrecisionStep();

  //Just set these, delegate everything else to the field type
  final int p = (INDEXED | TOKENIZED | OMIT_NORMS | OMIT_TF_POSITIONS);
  List<SchemaField> newFields = new ArrayList<>();
  for( SchemaField sf : schema.getFields().values() ) {
    if( sf.getType() == this ) {
      String name = sf.getName();
      newFields.add(new SchemaField(name + PointVectorStrategy.SUFFIX_X, fieldType, p, null));
      newFields.add(new SchemaField(name + PointVectorStrategy.SUFFIX_Y, fieldType, p, null));
    }
  }
  for (SchemaField newField : newFields) {
    schema.getFields().put(newField.getName(), newField);
  }
}
 
开发者ID:europeana,项目名称:search,代码行数:35,代码来源:SpatialPointVectorFieldType.java

示例4: configure

import org.apache.lucene.spatial.vector.PointVectorStrategy; //导入依赖的package包/类
@Override
public void configure(String fieldNameForThisInstance, Map<String, String> properties, Configuration configuration) {
  _ctx = SpatialContext.GEO;
  _strategy = new PointVectorStrategy(_ctx, fieldNameForThisInstance);
  _shapeReadWriter = new ShapeReadWriter<SpatialContext>(_ctx);
  _alternateFieldNames = Arrays.asList(fieldNameForThisInstance + PointVectorStrategy.SUFFIX_X,
      fieldNameForThisInstance + PointVectorStrategy.SUFFIX_Y);
  addSupportedIndexedShapes(Point.class);
  addSupportedOperations(SpatialOperation.Intersects);
}
 
开发者ID:apache,项目名称:incubator-blur,代码行数:11,代码来源:SpatialPointVectorStrategyFieldTypeDefinition.java

示例5: inform

import org.apache.lucene.spatial.vector.PointVectorStrategy; //导入依赖的package包/类
/**
 * Adds X and Y fields to the given schema for each field with this class as its field type.
 * 
 * {@inheritDoc}
 * 
 * @param schema {@inheritDoc}
 *
 */
@Override
public void inform(IndexSchema schema) {
  FieldType fieldType = schema.getFieldTypeByName(numberFieldName);
  if( fieldType == null ) {
    throw new RuntimeException( "Can not find number field: "+ numberFieldName);
  }
  //TODO support other numeric types in the future
  if( !(fieldType instanceof TrieDoubleField) ) {
    throw new RuntimeException( "field type must be TrieDoubleField: "+ fieldType);
  }
  precisionStep = ((TrieField)fieldType).getPrecisionStep();

  //Just set these, delegate everything else to the field type
  final int p = (INDEXED | TOKENIZED | OMIT_NORMS | OMIT_TF_POSITIONS);
  List<SchemaField> newFields = new ArrayList<SchemaField>();
  for( SchemaField sf : schema.getFields().values() ) {
    if( sf.getType() == this ) {
      String name = sf.getName();
      newFields.add(new SchemaField(name + PointVectorStrategy.SUFFIX_X, fieldType, p, null));
      newFields.add(new SchemaField(name + PointVectorStrategy.SUFFIX_Y, fieldType, p, null));
    }
  }
  for (SchemaField newField : newFields) {
    schema.getFields().put(newField.getName(), newField);
  }
}
 
开发者ID:yintaoxue,项目名称:read-open-source-code,代码行数:35,代码来源:SpatialPointVectorFieldType.java

示例6: newSpatialStrategy

import org.apache.lucene.spatial.vector.PointVectorStrategy; //导入依赖的package包/类
@Override
protected PointVectorStrategy newSpatialStrategy(String fieldName) {
  PointVectorStrategy strategy = new PointVectorStrategy(ctx, fieldName);
  strategy.setPrecisionStep(precisionStep);
  return strategy;
}
 
开发者ID:europeana,项目名称:search,代码行数:7,代码来源:SpatialPointVectorFieldType.java


注:本文中的org.apache.lucene.spatial.vector.PointVectorStrategy类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。