The Source for Java Technology Collaboration


Home | Changes | Index | Search | Go

CalendarSchedular

Title Looking Glass Project 206 - 3D Calendar/Scheduler

Deliverables Core - A central text based calendar system.

Modular schedule system - Including utilities for distributing, updating and combining different schedules.

3D interface - An intuitive, sprite-based GUI which can stand alone or be embedded in another LG3D? application.

Description The trouble with most calendars is they are flat. Get an image in your head of what is coming up in the next week or so and it will look nothing like a calendar (hopefully). A more intuitive calendar design would be one that matches most people concept of time.

3D step interface - My idea is to show the calendar as a series of wide steps vanishing downwards into the distance. Each step represents one day, week or month depending on what mode the user is in. The day steps would be divided into hour tiles, the week steps into day tiles and so on.

Simple information, like working days, can be shown by changing the colour or texture of the tiles.

3D event sprites - To take advantage of the extra space allowed by the 3d environment, 3d sprites could be used to represent events, deadlines, appointments etc. The user could add an event at a specific time and date and pick a model from the applications standard library or load their own.

When people use calendars, they write important things to remember in big, underlined letters: big -> important. In 3d, the size of the sprite would reflect the importance the user has given it (say, on a scale on 1-5). The more important, the bigger the sprite. The size/importance combined with the perspective effect gives a very intuitive idea of the urgency of the event. In bigger views, like one month per step, only the most important events will e shown to avoid cluttering up the view.

Sketches - There should be more steps in this design, which shrink less at each stage, but I'm not much of an artist. The squares marking the time either side of the event sprites are meant to be mostly transparent. Aplogies for the drawings, but I can't get at any 3D modelling packages till I get out of school.

Modular schedules - Some people will need to add a lot of information to their calendar. However, they will usually only need to closely examine similar types of events at once. For example, someone checking their project deadlines won't need to see doctors appointments at the same time. The events can be grouped into seperate scheduless of similar objects. Each schedule will be stored in a different file. The user will be able to select which schedules they currently want to see and events from other schedules will become partly transparent. This has the added benefit that in collaborative projects the schedule containing the project deadlines can be distributed to everyone and updated every time they log on.

Flexibility - The calendar information should be separate from the GUI in the code so that the GUI is just a front end to the calendar system. That way different interfaces can be added. The calendar should also be able to be embedded in another application, like an email client.

Other things need to be considered, like a adding reminders that go off before the event and a daemon to popup reminders.

Benefits Having a better calendar/scheduler makes it easier to manage your time, especially when working in groups. The modular schedule system lets you avoid having to deal with dozens of different separate schedules and calendars, combining them into one easy to manage view. The 3d event sprites make it easier to spot important events - when every entry looks the same its easy to become short sighted when flicking through a schedule.

Background I started learning Java from the Sun tutorial halfway through my A levels, mainly because I was so sick of working with VB. A few months ago I picked up J3D? with the vague intention of making a game, but I was sidetracked by coursework. I only just found out about the Google summer of code, it's a fantastic way to use the summer months and see what it's like coding for a real project.

This year I gained a conditional offer to read maths and computer science at Cambridge University, so I'm hoping this will also help me raise enough money to get on my feet after the summer.

Schedule 14th June - 1st July : Exam time. I intend to use this time familiarising myself with the LG3D? interace till I get out of school.

2nd July - 24th July : Create an outline design for the project and implement the core module.

24th July - 7th August : Implement the modular schedule utilities.

7th August - 31st August : Implement the 3d GUI.

Jamie Brandon - jamiiecb@tiscali.co.uk

Topic CalendarSchedular . { Edit | Ref-By | Printable | Diffs r6 < r5 < r4 < r3 < r2 | More }
 XML java.net RSS

Revision r6 - 13 Jun 2005 - 10:50:35 - Main.jamiiecb
Parents: WebHome > ProjectLookingGlass