GithubHelp home page GithubHelp logo

Perspective Taking/Spatial Orientation Test - PHP Implementation

Web-based electronic version of the "Perspective Taking/Spatial Orientation Test" by Hegarty, Kozhevnikov and Waller. It avoids the need for measuring the participants' response angles by hand and for computing the delta angle to the correct solution. This is a port of the original Python version by Tim Domino so the test can more easily be administered through a Web page.

Background

The test is based on two main papers:

  • Hegarty, M., & Waller, D. (2004). A dissociation between mental rotation and perspective-taking spatial abilities. Intelligence, 32, 175-191.

  • Kozhevnikov, M., & Hegarty, M. (2001). A dissociation between object-manipulation and perspective-taking spatial abilities. Memory & Cognition, 29, 745-756.

Dependencies

  • PHP (sudo apt-get install PHP7.0 on Debian-based systems). Should also work with earlier and later versions of PHP, although not tested.
  • The program loads jQuery and Bootstrap automatically.

Instructions

  • The test can be put on a Web server with a default page of index.php. The logic is contained in index.js.

  • The files count.dat and responses.dat must be writable by the Web server

  • This version assigns a participant number instead of asking for one. The number is stored and incremented in the count.dat file.

  • You can customize the text by changing the following files:

    • tasks.json - Test questions and answers
    • instructions.html - Test instructions
    • example.html - Example question explanation
    • question.html - Display of each question with placeholders for variables.

The object_array.png file is the grid of items, not modified from its original version.

For output, the program posts to itself (save.php) and adds a line of encoded/stringified JSON to an output file, responses.dat with:

  • Participant number.
  • Angle in degrees drawn for each question.
  • Average absolute deviation from correct angle in degrees across all questions.
  • Date and time submitted.
  • Whether it was complete (incomplete = time expired).

Screenshot

Screenshot

liance's Projects

ac-dialogue icon ac-dialogue

Recreating the Dialogue system from Animal Crossing

betterttv icon betterttv

BetterTTV enhances Twitch with new features, emotes, and more.

flashtext icon flashtext

Extract Keywords from sentence or Replace keywords in sentences.

hrtfmixer icon hrtfmixer

Apply Head Related Transfer Functions to audio by clicking and dragging the source location

ink icon ink

inkle's open source scripting language for writing interactive narrative.

ink-owlbook icon ink-owlbook

An unofficial collection of community-sourced examples, tips and tricks for Ink.

inky icon inky

An editor for ink: inkle's narrative scripting language

learn_ruby icon learn_ruby

a basic ruby class generated from test-first-teaching

liance.github.io icon liance.github.io

A portfolio theme for Jekyll for artists to display their work - http://chrisanthropic.github.io/starving-artist-jekyll-theme/

packaged-test icon packaged-test

Seeing if we can build the test as a stand-alone executable.

slayout icon slayout

UI layout and animation component for Unity

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.