Access wrist position in Kinect using C# - kinect

Sorry if this is rather obvious, but how would I be able to access the position of the wrist joint for the Kinect in C#? Would it really be as simple as:
SkeletonPoint leftWrist = skeleton.Joints[JointType.WristLeft].Position;
SkeletonPoint rightWrist = skeleton.Joints[JointType.WristRight].Position;
And I would call
leftWrist.X.toString
To check the value, right?
But what would the for loop look like to continue tracking the joints in every frame? Thanks for your help!

Yes, you can track that wrist position of the active players. All the joints that are available for tracking exist within the Skeleton.Joints property (itself a 'JointCollection').
Microsoft provides a tutorial for tracking the skeleton here: http://msdn.microsoft.com/en-us/library/jj131025.aspx
The values returned are of type Joint.

Related

How to create a list which sorts its self like games with the animation

I am creating a game in flutter in which I want to create my leader board page in which I want to achieve the list like Reorderable widget but in that we drag the tile manually but I need to get it automate ,it should elevate and lower another tiles same animation like Reorderable list but it should be automated
I hope I will find some solution with large community
You can take a look at the AnimatedList in Flutter: https://api.flutter.dev/flutter/widgets/AnimatedList-class.html
When a new value is inserted (or removed), it is automatically animated (and you can of course customize this animation to suit your needs).
I'm not sure how you would handle moving an item from one place to the next in the list, though.
Update
I found this other SO thread which mentions the great_list_view package, in which you can just update your underlying list (with the new score, or sort it again) and it will automatically animate it for you. That sounds like a good option, and the package has recently been updated and has a decent amount of likes on pub.
https://pub.dev/packages/great_list_view

Audio player with predetermined songs, and page transitions. best language

My dad's birthday is coming up. As a child/youth he recorder music of the radio (as many did then) and catalogued them.
I want to create a audio player that displays the songs similar to the way he wrote them ( image linked at bottom).
Has a play all for that page but also has the function to play individual songs.
If possible I would like a page turn animation when switching between pages.
I wold like it to be possible to jump to certain pages e.g page a, page b etc.
I have seen how to create simple media players where you open a file. However I haven't been able to see what I am after.
The layout I am thinking of is the song list top, and Controls at bottom.
My question(s) is which language is best for this and how best to go about doing this?
Any help would be greatly appreciated.
Thought I'd best add that I do not know programming and will be learning what I need for this project as I go. So if possible could you explain your help or indicate which part of it I will need to Google.
UPDATE
Thank you for the replies. I went with VB as suggested and would love some feedback if nobody minds. As I learned more I kept changing my design so it has taken a while to get back to you.
My plan now is to:
*Implement any changes recommended
*Change a little of the gui -
+Change the image of the Insert Tape and Play tape buttons
+Remove the Window media player (Mark not visible) and polish off the control buttons
*Use FormB as the template for the rest of the pages
*Look into compiling the program
+Test on second computer and laptop
+ Possible test on my brothers computer if he is willing to download it
As well as putting the code here I have uploaded the project to Dropbox. There are two version. With music files (62.8 MB and without 5.75 MB. Please note the files are not the copyrighted songs I have substituted them with royalty free alternatives (please see below for attribution). I I changed the file names instead of code to make it easier should I forget to change it back.
Ok the code was too long to add in so uploaded it to GithubGist
FormB vb https://gist.github.com/Phoenix830/6cc03bc9bb54bdd98aaf4641acaef075
FormB.Designer VB https://gist.github.com/Phoenix830/3f347129ebc7c4d5410c9b44a7df9a81
Custom Controls -
Lab_But vb https://gist.github.com/Phoenix830/d7bd00b16e08f116dbf12159e3d464af
Trackbar vb https://gist.github.com/Phoenix830/4e90cf4df9a3ed694e4b9aa3dc60ead6
Zip files
No music https://www.dropbox.com/s/vdjlc1648qi4bpd/Cassette%20Tapes%20-%20No%20Music.rar?dl=0
With Music https://www.dropbox.com/s/i1m5zh0449385zn/Cassette%20Tapes.rar?dl=0
I think that is everything about my current code. This is Attributes and source notes.
Music
Title Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 3.0
http://creativecommons.org/licenses/by/3.0/
01-Barry_Manilow_-_Mandy.mp3 = Arroz Con Pollo.mp3
02-Barry_Manilow-New_York_City_Rhythm = Cheery Monday.mp3
03-Barry_Manilow_-_Looks_Like_We_Made_It = Galway.mp3
04-Barry_Manilow_-_Can't_Smile_Without_You = Glitter Blast
05-Barry_Manilow-Ready_to_Take_a_Chance_Again = Industrious Ferret
06-Barry_Manilow-Tryin'_to_Get_the_Feeling_Again = Le Grand Chase
07-Barry_Manilow-Could_It_Be_Magic = Nouvelle Noel
08-Barry_Manilow_-_Copacabana = Onion Capers
S2-01-Barry_Manilow-It's_a_Miracle = Teddy Bear Waltz
S2-02-Barry_Manilow-All_the_Time = Unholy Knight
S2-03-Barry_Manilow-I_Write_the_Songs = Zazie
This flaged up as an error if I didn't mark it as code
TrackBar
https://www.dropbox.com/s/i1m5zh0449385zn/Cassette%20Tapes.rar?dl=0
I have tried removing some excess code and still have to delete commented out sections that I don't need. I don't understand this enough and can not find enough information online to implement this in my own code using this just as a guide
https://www.youtube.com/watch?v=8Gi_JFAavM4
Getting MP3 info
http://forums.codeguru.com/showthread.php?409651-RESOLVED-How-to-check-the-song-playing-in-Windows-Media-Player
I can not fully remember all the forums, Youtube videos and Microsoft documents I viewed. I will try to add them if I find them as I go over my notes.
These last few links may or may not be overkill but thought worth adding encase they are useful to someone else
Also updated keywords. If they are wrong let me know and I will change them
One of the simplest languages to learn and to easily create an interface i would say is actually Visual Basic in Visual Studio, do download that and google things like "how to play audio file in VB.NET" and "how to add directories to list in VB.NET" and try to use the directories in the list (and when a song reaches it's end) just start on the next one in the list. I would use a ListBox for this. Tell me if you need more help, i would be glad to help you program it, if you need.

Read code markers of a images

I do not know the real name of this type of "QR" they are used in augmented reality and other tracking applications.
Here is a image of what it looks like.
I want to build a vb.net program that finds as many of this in a image. I do not need to get angels and so. Only a number.
The marker need to handler +10K of numbers and tolerate rotation.
I did use https://github.com/jcmellado/js-aruco as a template to solve my problem.

generate geo tiles from vector data

i am facing this problem : I have in my database some vector data (polylines ...) which describe many world/country/region/cities boundaries.
I would like to have an interactive map on thoses areas.
When i render those data in the browser (data are sent in geojson) this is slow (i'am not surprised).
The next reason, is to generate some raster tiles to represent the areas at different zoom level and to have a way to make the relation between a click on a area and the area selected (to display more info).
I am a newbie in geo tiles :
What is the best tool to generate png/jpg tiles from vector data?
How to make relation between an area clicked and a "id" in database?
I know my questions are very large, but if you have some advices ...
Thanks!
I recently wrote a blog posting on how to improve the rendering speed of raster tiles:
http://blog.webfoot.com/2013/03/12/optimizing-map-tile-generation/
As for connecting a click to a jurisdiction ID, I don't think there is a shortcut: you need to translate the click into lat/lng (or Vast Coordinate System, as I describe in the blog post) and then do a point-in-polygon check. If you are using PostGIS, then you can do an ST_Intersects.
NOTE: if you are using MySQL, the intersection is done with bounding boxes, not the polygons. It still is possible: you just need to grab a point-in-polygon function from somewhere to check which polygon if a bounding-box check gets you more than one.
Here is an example of dots you can click on:
http://maps.webfoot.com/demos/CanadianStimulus/CanadianStimulus.html
Note that because people aren't precise with clicking (especially with tiny dots), I actually make a few pixels around the dots "live" as well as the single-pixel dots. You can also click away from the dot, and then it will show the polygon (which in this example's case, is the federal electoral district).
There is a MongoDB Plugin datasource for Geoserver, a full featured WebGIS Server. You can use it to build up a map rendering service (a WMS actually) ofyour data. Then use Geowebcache to generate tiles of your map.
This way you can use fully featured WebGIS stack, which allows you to manage additional datasources, and easy tile subset recreation if portions of your data get updated.
Also querying features on a map (relation map position to element in database) is provided through Geoservers WFS implementation.

Any way to physically move the Kinect camera?

Really new to kinect. I am trying to read up material I find. I found technical spec and the .net API documentation, but could figure out if what I am trying to do is possible:
Can I instruct the kinect to physically move the cameras? (I want to view other people in the room for example).
Edited: I am using the MS Kinect SDK.
Thank you
You can use NuiCamera.ElevationAngle to set the elevation angle of kinect camera. Yea, as mentioned above answer, you can only move up and down.
This is the example in Visual C#
I create a slider to get the value. Kinect Mortor is limited to -27 to 27 degree of rotation only.
<Slider Value = "{Binding ElevationAngle, Mode =TwoWay}" Height="171" Interval="1" IsSnapToTickEnabled="True" Margin="914,536,284,45" Maximum="27" Minimum="-27" Name="slider_tilt" Orientation="Vertical" SmallChange="1" TickPlacement="TopLeft" Width="38" />
Create a button called btnSetTilt and under the button click event, feed the value of slider to Elevation angle. That's it.
private void btnSetTilt_Click(object sender, RoutedEventArgs e)
{
//Set angle to slider_tilt value
nui.NuiCamera.ElevationAngle = (int)slider_tilt.Value;
}
Using OpenKinect you can control it with
public setMotorPosition(float)
With the Microsoft Kinect SDK for Windows you can use
NuiCameraSetElevation
which is limited to 1 call per second and no more than 15 calls per 20 second period.
The motor and gear are not meant for frequent use.
You can but only up and down, it wont work moving side to side. And Roger Lindsjo has the same explanation as I do. But just wanted to clarify.