Exemple #1
0
  void ForEachPoint(Functor && f, int scale)
  {
    ParseGeometry(scale);

    if (m_points.empty())
    {
      // it's a point feature
      if (GetFeatureType() == feature::GEOM_POINT)
        f(m_center);
    }
    else
    {
      for (size_t i = 0; i < m_points.size(); ++i)
        f(m_points[i]);
    }
  }
//////////////////////////////////////////////////////////////////////
// feature_Factory::SpawnFeature() //              \author Logan Jones
////////////////////////////////////                   \date 2/13/2002
//               
//====================================================================
// Parameters:
//  LPCTSTR strType - 
//  long x          - 
//  long y          - 
//  BYTE z          - 
//
// Return: BOOL - 
//
BOOL feature_Factory::SpawnFeature( LPTSTR strType, long x, long y, BYTE z )
{
	feature_Object* pObject = new feature_Object;
	std_SizeF		Size;

	FeatureType_t* pFeatureType = GetFeatureType( strType );
	if( stricmp(pFeatureType->Name.c_str(),strType)!=0 )
	{
		DWORD A = std_NameHash( strType );
		DWORD B = std_NameHash( pFeatureType->Name.c_str() );
		assert( 0 );
	}
	assert( pFeatureType );
	pObject->Create( std_Point(x,y), pFeatureType );
//	objectManager.InsertObject( pObject );

	return TRUE;
}