GithubHelp home page GithubHelp logo

motion-plan's People

Contributors

suilevap avatar

Watchers

 avatar

motion-plan's Issues

Implement Theta*

Assumptions:
Can be used only with non weighted map

Affected components:
ThetaPathFinder.cpp, VisiblityMap

Expected interface of new functionality:
PathFinder.h

Possible implementation:
Use VisibilityMap to change parent 
http://aigamedev.com/open/tutorials/theta-star-any-angle-paths/

Expected performance:
slower than PathFinder by <50-100%

Estimation time:
8h

Original issue reported on code.google.com by [email protected] on 21 Jul 2011 at 9:42

Add Weighted path finder

Affected components:
New class: WeightedPathFinder

Possible implementation:
Use Map<float>, Implement WeightedPathFinder::GetDistance

Expected performance:
/*slower than PathFinder by <5%*/

Estimation time:
4h



Original issue reported on code.google.com by [email protected] on 21 Jul 2011 at 3:18

Add Unit tests projects

Affected components:
Add MotionPlanTest project

Expected interface of new functionality:
BasePathFinder_FindPath_Test,
BasePathFinder_FindPathStart_Test,
BasePathFinder_FindPathEnd_Test, and etc

Possible implementation:
BasePathFinder_FindPath_Test
{
map = new GridMap();
map->SetCell(..);
...
pathFibder = new PathFinder(map);
path = pathFibder->FindPath();

Assert(path.Count(),x)
...
}



Original issue reported on code.google.com by [email protected] on 16 Aug 2011 at 8:24

Create item template for class file

Create item template (in VS, right click on project "add\new Item")
with structure:
ClassA.h

#ifndef PROJECTNAME_CLASSA_H_
#define PROJECTNAME_CLASSA_H_
namespace ProjectName
{

class ClassA
{
private:

public:
  ClassA();
  ~ClassA();
}

#include "ClassA.inl"
}

#endif//PROJECTNAME_CLASSA_H_

ClassA.inl:

#ifndef PROJECTNAME_CLASSA_H_
#error "Include from ClassA.h only."
#else
//TODO: write inline code here
#endif

ClassA.cpp:

#include "ClassA.h"

namespace ProjectName
{

ClassA::ClassA()
{
}

ClassA::~ClassA()
{
}

}

ClassA and ProjectName should be depend on some variables

Original issue reported on code.google.com by [email protected] on 26 Jul 2011 at 9:16

Refactoring DistanceEvaluator interface

Affected components:
/*DistanceEvaluator.inl;*/

Expected interface of new functionality:
Need an investigaion of new interface of distance evaluation.

Possible implementation:
template<typename T>
inline static T DistanceEvaluator::EuclideanDistance(Point p1, Point p2)
{
    return (T) sqrt((p1.x-p2.x)*(p1.x-p2.x) + (p1.y-p2.y)*(p1.y-p2.y));
}

Expected performance:
/*faster than previous implementation*/

Estimation time:
/*1-2h*/

Original issue reported on code.google.com by [email protected] on 28 Jul 2011 at 9:46

Refactoring GridMapView to use Point<T> and transfromation

Affected components:
GridMapView, Interface, Transformable, Scalable

Expected interface of new functionality:
Adde argument to constructor GridMapView

Possible implementation:
Added to GridMapView method 
Point<int> TrasformPoint(Point<T> point);
Change implementtatin GetPoint, GetNode


Expected performance:
slower than by 5-10%

Estimation time:
8h


Original issue reported on code.google.com by [email protected] on 30 Jul 2011 at 11:16

Implement check collsion line on different type of maps

Affected components:
Map.h and maybe all inheritors,

Expected interface of new functionality:
bool Map::Visible(index1, index2);

Possible implementation:
For Map using simple DataGrid it can be some of method to drw raster line,

Expected performance:
Unknow =)

Estimation time:
24h


Please use labels and text to provide additional information.


Original issue reported on code.google.com by [email protected] on 21 Jul 2011 at 8:55

Split Map and DataGrid and Map

Affected components:
Map, PathFinder, Interface,
new class: DataGrid

Expected interface of new functionality:
Map::GetNeighbours(index), GetPoint(index), (Get/Set Cell/Region(?)
DataGrid - same like Map now;

To check arhitecture try to implement:
HexMap

Possible implementation:
Rename Map to DataGrid,  exctract some functionality from PathFinder to new 
class Map

Expected performance:
Slower than previous PathFinder version by <5%

Estimation time:
8h

Original issue reported on code.google.com by [email protected] on 21 Jul 2011 at 2:06

In vs2010 GMAPI libs are not working

What steps will reproduce the problem?
1. Open motion-plas2010.sln
2. Added #define USE_GMAPI
3. Try to compile MotionPlan project

What is the expected output? What do you see instead?
Expected: build succeeded =), (Now I see failed=)


Original issue reported on code.google.com by [email protected] on 28 Jul 2011 at 5:06

Commenting

Affected components:
All

Task:
Comment the project as much as possible.

Estimation time:
/*48h*/

Original issue reported on code.google.com by [email protected] on 30 Jul 2011 at 10:39

Split MotionPlan and Gm interface to 2 different dlls

Affected components:
MotionPlan.dll, Interface.h, Interface.cpp

Expected interface of new functionality:
Interface.h

Possible implementation:
Create GmInterface.dll and move all GM specific code their(Interface, 
PathConverter, GMAPI references and etc)

Expected performance:
the same

Estimation time:
8h

Original issue reported on code.google.com by [email protected] on 22 Jul 2011 at 7:56

Implement structure to stotre precalculated visibility matrix

Affected components:
Map, VisibilityMap;

Expected interface of new functionality:
VisibilityMap::Create(Map p,..); bool VisibilityMap::Visible(index1, index2)

Possible implementation:
1. Create matrix NxN where N = map_width x map_height;
data[N,N] = Visibility(id1, id2)
2. Create structure that describes which points are visible from here
 a.Points on what coordinate are visible (data[w,h] = visibility[w1,h1])
 b. Point on what distance on some angle are visible (data[w,h] = visibilitLength[angle])

Expected performance:
fast as possible=)

Estimation time:
40h

Original issue reported on code.google.com by [email protected] on 21 Jul 2011 at 9:37

Async path finder execution

Affected components:
Interface

Expected interface of new functionality:
Ticket FindPathAsunc(...); GetResult(Ticket)

Possible implementation:
using thread or better some abstraction tasks, thread pool)

Expected performance:
Async=)

Risk:
Classes (PathFinder, MapView) should be thread safe

Estimation time:
40h

Original issue reported on code.google.com by [email protected] on 28 Jul 2011 at 9:35

Implement HeightMap

Implement weighted map where weight depends on edge between 2 nodes

Affected components:
WeightedMap.h, HeightPathFinder.cpp

Expected interface of new functionality:
HeightPathFinder(downAlpha, upAlpha)

Possible implementation:
Implemnet HeightPathFinder::GetDistance using dx = (height1-height2)
For example: distance = euclidDist* dx* ( dx>0?alphaUp:alphaDown)

Expected performance:
slower than WeightedPathFinder by 10-20%

Estimation time:
8h



Original issue reported on code.google.com by [email protected] on 21 Jul 2011 at 9:50

Implement PortalMap

Map with possibility to have edge with fixed distance cost to any point on the 
map

Risk:
Heuristic should be more complex

Affected components:
PortalMap

Expected interface of new functionality:
Cell a = PortalMap::GetCell(id); a.PortalTo = id2;

Possible implementation:
Implement PortalMap:GetNeighbors(id) method

Expected performance:
Slower than PathFinder by 50-100%

Estimation time:
24h


Please use labels and text to provide additional information.


Original issue reported on code.google.com by [email protected] on 21 Jul 2011 at 10:04

Create CellQueue

This issue was created by revision 597787ab44c1.

create custem CellQueue to try improve performance in BidirectionalPathFinder

Original issue reported on code.google.com by [email protected] on 12 Aug 2011 at 8:22

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.