本文整理汇总了C#中Geometry.ConvertAll方法的典型用法代码示例。如果您正苦于以下问题:C# Geometry.ConvertAll方法的具体用法?C# Geometry.ConvertAll怎么用?C# Geometry.ConvertAll使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Geometry
的用法示例。
在下文中一共展示了Geometry.ConvertAll方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SelectNearest
/// <summary>
///
/// </summary>
/// <returns></returns>
public Geometry SelectNearest(Geometry[] contextGeometries)
{
if (contextGeometries == null)
throw new System.ArgumentNullException("contextGeometries");
IGeometryEntity[] hostentities = contextGeometries.ConvertAll(GeometryExtension.ToEntity<Geometry, IGeometryEntity>);
if(hostentities == null)
throw new System.ArgumentException(string.Format(Properties.Resources.InvalidInput, "contextGeometries", "SelectNearest"), "contextGeometries");
int nearestIndex = GetIndexOfNearestGeometry(hostentities, PointEntity);
IGeometryEntity nearestGeom = hostentities[nearestIndex];
return Geometry.ToGeometry(nearestGeom, false); //returning one of the existing geometry, so persist is no-op.
}
示例2: FromGeometry
/// <summary>
/// Creates a block with the given name, reference coordinate system and from the
/// specified geometries
/// </summary>
/// <param name="blockName">the block name</param>
/// <param name="referenceCoordinateSystem">the reference coordinate system</param>
/// <param name="contents">the geometries contained in the block</param>
/// <returns></returns>
public static Block FromGeometry(string blockName, CoordinateSystem referenceCoordinateSystem,
Geometry[] contents)
{
string kMethodName = "Block.FromGeometry";
if (null == referenceCoordinateSystem)
throw new ArgumentNullException("contextCoordinateSystem");
if (string.IsNullOrEmpty(blockName))
throw new ArgumentException(string.Format(Properties.Resources.InvalidInput, blockName, kMethodName), "blockName");
IGeometryEntity[] hosts = contents.ConvertAll(GeometryExtension.ToEntity<Geometry, IGeometryEntity>);
if (null == hosts || hosts.Length == 0)
throw new ArgumentException(string.Format(Properties.Resources.InvalidInput, "geometries", kMethodName), "geometries");
IBlockHelper helper = HostFactory.Factory.GetBlockHelper();
if (null == helper)
throw new InvalidOperationException(string.Format(Properties.Resources.OperationFailed, kMethodName));
if (helper.DefineBlock(referenceCoordinateSystem.CSEntity, blockName, hosts))
{
return new Block(blockName);
}
return null;
}
示例3: IndexOfNearest
public int IndexOfNearest(Geometry[] contextGeometries)
{
if (contextGeometries == null)
throw new System.ArgumentNullException("contextGeometries");
IGeometryEntity[] hostentities = contextGeometries.ConvertAll(GeometryExtension.ToEntity<Geometry, IGeometryEntity>);
if(hostentities == null)
throw new System.ArgumentException(string.Format(Properties.Resources.InvalidInput, "contextGeometries", "IndexOfNearest"), "contextGeometries");
return GetIndexOfNearestGeometry(hostentities, PointEntity);
}