Class yii\mongodb\file\Cursor
| Inheritance | yii\mongodb\file\Cursor » IteratorIterator |
|---|---|
| Implements | Countable |
| Available since version | 2.1 |
| Source Code | https://github.com/yiisoft/yii2-mongodb/blob/master/file/Cursor.php |
Cursor is a wrapper around \MongoDB\Driver\Cursor, which allows returning of the record with yii\mongodb\file\Download instance attached.
Public Properties
| Property | Type | Description | Defined By |
|---|---|---|---|
| $collection | yii\mongodb\file\Collection | Related GridFS collection instance. | yii\mongodb\file\Cursor |
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __call() | PHP magic method, which is invoked on attempt of invocation not existing method. | yii\mongodb\file\Cursor |
| __construct() | Constructor. | yii\mongodb\file\Cursor |
| __get() | PHP magic method, which is invoked on attempt of getting not existing property. | yii\mongodb\file\Cursor |
| __isset() | PHP magic method, which is invoked on attempt of checking if a property is set. | yii\mongodb\file\Cursor |
| __set() | PHP magic method, which is invoked on attempt of setting not existing property. | yii\mongodb\file\Cursor |
| __unset() | PHP magic method, which is invoked on attempt of unsetting of property. | yii\mongodb\file\Cursor |
| count() | Count elements of this cursor. | yii\mongodb\file\Cursor |
| current() | Return the current element This method is required by the interface Iterator. | yii\mongodb\file\Cursor |
| getId() | Returns the ID for this cursor. | yii\mongodb\file\Cursor |
| setTypeMap() | Sets a type map to use for BSON unserialization. | yii\mongodb\file\Cursor |
| toArray() | Returns an array containing all results for this cursor | yii\mongodb\file\Cursor |
Property Details
Related GridFS collection instance.
Method Details
PHP magic method, which is invoked on attempt of invocation not existing method.
It redirects method call to inner iterator.
| public mixed __call ( $name, $arguments ) | ||
| $name | string | Method name. |
| $arguments | array | Method arguments |
| return | mixed | Method result. |
|---|
Constructor.
| public void __construct ( $collection, $cursor ) | ||
| $collection | yii\mongodb\file\Collection | |
| $cursor | \MongoDB\Driver\Cursor |
PHP magic method, which is invoked on attempt of getting not existing property.
It returns value from the inner iterator.
| public mixed __get ( $name ) | ||
| $name | string | Field name. |
| return | mixed | Field value. |
|---|
PHP magic method, which is invoked on attempt of checking if a property is set.
| public boolean __isset ( $name ) | ||
| $name | string | Field name. |
| return | boolean | Whether field exists or not. |
|---|
PHP magic method, which is invoked on attempt of setting not existing property.
It passes value to the inner iterator.
| public void __set ( $name, $value ) | ||
| $name | string | Field name. |
| $value | mixed | Field value. |
PHP magic method, which is invoked on attempt of unsetting of property.
| public void __unset ( $name ) | ||
| $name | string | Field name. |
Count elements of this cursor.
This method is required by the interface Countable.
| public integer count ( ) | ||
| return | integer | Elements count. |
|---|
Return the current element This method is required by the interface Iterator.
| public mixed current ( ) | ||
| return | mixed | Current row |
|---|
Returns the ID for this cursor.
| public \MongoDB\Driver\CursorId getId ( ) | ||
| return | \MongoDB\Driver\CursorId | Cursor ID. |
|---|
Sets a type map to use for BSON unserialization.
| public void setTypeMap ( $typemap ) | ||
| $typemap | array | Type map. |
Returns an array containing all results for this cursor
| public array toArray ( ) | ||
| return | array | Containing all results for this cursor. |
|---|


If the Data Manager (Tasks table) does not load or loads slowly, you can reset the filters, sort order, and remove additional tabs.
You can create multiple projects within one browser session. If you don't want to loose your project, just save the shared link in the safety place. If you want to share the project with somebody, send him or her a shared link.
| {{ desc }} | {{ uuid }} |
| {{ desc }} | {{ uuid }} |
You can add a shared project here if you open a shared link from the other user
{% endif %}


jsPlumb supports the concept of 'Groups', which are elements that act as the parent for a set of child elements. When a Group element is dragged, its child elements (which are, in the DOM, child nodes of the Group element) are dragged along with it. Groups may be collapsed, which causes all of their child elements to be hidden, and for any connections from a child element to outside of the Group to be "proxied" onto the Group's collapsed element.
To add a Group you first need to have added it as an element in the DOM. Let's assume you have some element called
foo
. It can be any valid HTML element but since Groups are by their nature containers for other elements it's probably
best to just stick to trusty div
. So let's assume you have a variable foo
that references a DIV element.
A simple example, using the defaults:
jsPlumb.addGroup({
el:"foo",
id:"aGroup"
});
Here we've created a Group with ID aGroup
. Its element - foo
- will be made draggable, and it will also
be configured to accept elements being dropped onto it. By default, child elements will be draggable outside of the
Group element, but if they are not dropped onto another Group they will revert to their position inside the Group
element before they were dragged.
Several aspects of a Group's behaviour can be configured; broadly speaking these fall into two categories: the behaviour of the Group element, and the behaviour of its child elements.
dragOptions
is filter
, which provides a selector, or selectors, identifying elements that should not cause a
drag to begin. For a Group element you will probably want to identify the child elements of the Group, so that they
can be dragged without kicking off a drag of the Group element.revert By default this is true, meaning that child elements dropped outside of the Group (and not onto another Group
that is accepting droppables) will revert to their last position inside the group on mouseup. If you set revert:false
you get a Group that allows child elements to exist outside of the bounds of the Group element, but which will still
drag when the Group is dragged and will be made invisible when the Group is collapsed.
prune Set to false by default. If true, a child element dropped in whitespace outside of the Group element will be removed from the Group and from the instance of jsPlumb, and any connections attached to the element will also be cleaned up.
orphan Set to false by default. If true, a child element dropped in whitespace outside of the Group element will be removed from the Group, but not from the instance of jsPlumb.
constrain Set to false by default. If true, child elements are constrained to be dragged inside of the Group element only.
ghost Set to false by default. If true, a child element that is dragged outside of the Group element will have its original element left in place, and a 'ghost' element - a clone of the original - substituted, which tracks with the mouse.
dropOverride False by default. If true, child elements may be dragged outside of the Group element (assuming no other flag prevents this), but may not be dropped onto other Groups.
By default, a Group will initially be rendered in its expanded state. You can request the Group be collapsed initially:
jsPlumb.addGroup({
el:"foo",
collapsed:true
});
Groups can be removed with the removeGroup
method:
jsPlumb.removeGroup("aGroup");
This will remove the Group with ID aGroup
. If you also wish to remove all of the Group's child elements you can
provide a second argument:
jsPlumb.removeGroup("aGroup", true);
You can control the location, appearance and behaviour of the Endpoints that appear when a Group is collapsed with
the anchor
and endpoint
parameters. These take the same values as in the other parts of the API in which they
appear. For instance, perhaps you want to show a smallish dot that tracks the perimeter of a Group when it is
collapsed:
jsPlumb.addGroup({
el:someElement,
id:"aGroup",
anchor:"Continuous",
endpoint:[ "Dot", { radius:3 } ]
});
Perhaps you want to show a large rectangle in the top left corner:
jsPlumb.addGroup({
el:someElement,
id:"aGroup",
anchor:"TopLeft",
endpoint:[ "Rectangle", { width:10, height:10 } ]
});
etc. Any valid anchor
or endpoint
may be used.
You can add an element to a Group programmatically with the addToGroup(group, el)
method:
jsPlumb.addToGroup("aGroup", someElement);
If you try to add an element that already belongs to some other Group an exception is thrown.
You can remove an element from a Group programmatically with the removeGromGroup(el)
method:
jsPlumb.removeFromGroup(someElement);
Note that you do not need to nominate the Group from which you wish to remove the element. Since an element can belong to only one Group at a time, it will simply be removed from the Group. If you call this method with an element that does not belong to a Group, nothing happens.
By default, Groups are configured to accept elements being dropped onto them - any element that is currently being managed by the jsPlumb instance, not just existing members of other groups. There are a few ways to prevent this, both already discussed above:
jsPlumb.addGroup({
el:someElement,
droppable:false
});
This prevents the Group from accepting dropped elements.
jsPlumb.addGroup({
el:someElement,
constrain:true
});
This will prevent elements from being dragged outside of the Group.
jsPlumb.addGroup({
el:someElement,
dropOverride:true
});
This will prevent elements from being dropped onto some other Group.
Use collapseGroup
and expandGroup
:
jsPlumb.collapseGroup("aGroup");
jsPlumb.expandGroup("aGroup");
Three CSS classes are used:
| Class | Purpose |
| jtk-group-expanded | added to non-collapsed group elements (added when group initialised) |
| jtk-group-collapsed | added to collapsed group elements |
| jtk-ghost-proxy | added to the proxy element used when `ghost` is set to true |
A number of events are fired by the various methods for working with Groups.
| Event | Description | Parameters |
| group:add | Fired when a new Group is added | {group:Group} |
| group:remove | Fired when a Group is removed | {group:Group} |
| group:addMember | Fired when an element is added to a Group | {group:Group, el:Element} |
| group:removeMember | Fired when an element is removed from a Group | {group:Group, el:Element} |
| group:collapse | Fired when a Group is collapsed | {group:Group} |
| group:expand | Fired when a Group is expanded | {group:Group} |
addGroup
on a jsPlumb instance, or you retrieved from a jsPlumb instance using getGroup(groupId)
.


dms-view
dms-view is an interactive visualization tool for deep mutational scanning.
Please see the
documentation (dms-view.github.io/docs) for detailed instructions on
using the tool or
uploading your own data.
Instructions:
Select points of interest by
clicking or
brushing (click, hold and swipe).
Deselect points by
clicking again or
brushing while holding down the
shift key or after changing the radio button from
select to
deselect.
Change between different
conditions, different
site-level metrics, different
mutation-level metrics and different
protein-representations using the dropdown menus.


Integrate your magento store with salesforce and get real time order synchronization using Eshop Sync.
Learn MoreNext generation application revamping the features of eCommerce and Salesforce.
Learn MoreA useful application which let your eCommerce store to synchronize with Salesforce.
Learn MoreA magnificient app to keep up your Virtuemart store data at Salesforce end to avail the benifits of CRM.
Learn MoreAn Impressive application for synchronizing your Opencart platform with Salesforce.
Learn MoreSync your Woocommerce store with Salesforce and enhance the benifits of eCommerce and Salesforce.
Learn MoreAn Impressive application for synchronizing your Magento2 platform with Salesforce.
Learn MoreSync your Shopify store with Salesforce and enhance the benifits of eCommerce and Salesforce.
Learn MoreSync your BigCommerce store with Salesforce and enhance the benifits of eCommerce and Salesforce.
Learn MoreEshopSync connector integrates eCommerce with Salesforce to provide an enhanced and streamlined perspective for B2B and B2C Marketing. You can import all the product, category, pricelist, user information from eCommerce to salesforce and create real time orders in salesforce and eCommerce both with improved Product Management, Tracking System, Customer Support and Case Management. Choose your platform eg: Virtuemart, CS-Cart, Magento and save settings.
Work with Platform oriented tabs views to deliver best to your customers. Keep the data updated, integrated and accurate.
Now sync products, price books and product price into Salesforce
Sync all the generated orders. In real time sync your order with Salesforce
Synchronize registered users as Customers and unregistered users as Leads.
Sync eCommerce categories into Salesforce
Salesforce 1 supported with interactive design and brilliant user experience
According to requirements we are open for All customization.
I needed a way to sync my data from my CS-Cart site into Salesforce and this worked for me. Nice app and the support & development team were great too.


Reddit
Discord
GitHub
About
/r/GameMaker Discord GitHub
Commit Date
Close
Visit Repo
Download Repo
Loading...


The odds of prizing
of a card you play
of.
The odds of breaking up a
-
line.
The odds of breaking up a
-
-
line.
Sycamore Count:
N count:
Trainer's Mail count:
Shaymin-EX count:
Hoopa-EX count:
Note: Does not take into account if you have a good hand or not.


--- layout: post title: "No Title" ---
Snow Leopard brings the option for ridiculously large 512x512 icons in the Finder. Silly for usual folder navigation (like that above) but for photo and video previews it’s brilliant.


Try to love the world and you will be happier person. When you got nothing to offer, just offer your smile
GitHub“Courage doesn’t always roar. Sometimes courage is the little voice at the end of the day that says ‘I’ll try again tomorrow.”
“Courage doesn’t always roar. Sometimes courage is the little voice at the end of the day that says ‘I’ll try again tomorrow.”
“Courage doesn’t always roar. Sometimes courage is the little voice at the end of the day that says ‘I’ll try again tomorrow.”
“Courage doesn’t always roar. Sometimes courage is the little voice at the end of the day that says ‘I’ll try again tomorrow.”
“Courage doesn’t always roar. Sometimes courage is the little voice at the end of the day that says ‘I’ll try again tomorrow.”
“Courage doesn’t always roar. Sometimes courage is the little voice at the end of the day that says ‘I’ll try again tomorrow.”
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat."
— Alex, Software Developper
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat."
— Alex, Software Developper
Want to know more about happiness?
My other site


{%- assign gistTheme = "https://cdn.rawgit.com" | append: "/lonekorean/gist-syntax-themes/b737b139/stylesheets" | append: "/solarized-dark.css" -%}


I've tried vaporising 4-ACT-DET twice now. Once at 4mg and once at 16mg. With 4mg I thought I felt something but not much and it was so low a dose I figure it was too small. It has been a while since then. I finally decided to try it again with a bit more this time.
When it first start to heat up there was decent puff of vapor but after this I let up on the flame to see what the immediate effects were.... not much.... when I tried to heat it again I got minimal vapor and after that a lot of it just seemed to char and remain in the pipe. So I would suggest if this is attempted to go all out on the first it because it does not put up with heat well and the longer it is the exposed the less you may get out of it.
Anyway within about 5 min some mild effects in tactile perception and mental perspective kick in these progress for some time but very very gently. At about 40 min there is a flushing of the skin, and a feeling of warmth so big doses might be dangers in a hyperthermic kind of way. Over all it is not an unpleasant experience but about only 1 half that of what 4-ACT-DET is like orally at the same dose. Visuals are about only 1/3rd what they are orally....
Be safe and enjoy life. :)
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


Meadowside
at Norbeck Manor
Hello from Meadowside
Forms & Documents
Community (NextDoor)
Frequently Asked Questions
Connect with Us


Port Edit (Node:
)
Discard and Back
Fields marked with * are mandatory
Error detail here
Attribute
Type
Value
Overview
Port Number *
String
Unable to edit
ifName *
String
(Auto-Generated Name:
)
If the ifName ifName of this port is blank, it will be given the automatically generated name.
Interface Type *
String
Ethernet
ATM
Serial
POS
Vport
Interface type of this port (Unable to edit)
IPAddress
IPAddress
VPN Prefix
/
The IP address and mask of this port. ex）<IP_ADDRESS>/8
If this IP belongs to the VPN space, enter the VPN space name in the VPN name and leave it blank for Global IP address.
Port Mode
Switch Port Mode
Operational Status
Facility Status
String
Bandwidth
Long
Bandwidth of this port. (bps)
Purpose
String
Resource Permission
String
Specify the permission type of this resource. (ex Admin, Shared, Other)
Note
String
OK


Heart attack causes
Heart attacks are caused by the blood supply to the heart being suddenly interrupted. Without this supply, heart muscles may be damaged and begin to die.
Without treatment, the heart muscles will experience irreversible damage.
If a large portion of the heart is damaged in this way, the heart stops beating (known as a cardiac arrest), resulting in death.
Coronary heart disease
Coronary heart disease (CHD) is the leading cause of heart attacks. CHD is a condition in which the coronary arteries (the major blood vessels that supply the heart with blood) become clogged with deposits of cholesterol. These deposits are called plaques.
Before a heart attack, one of the plaques ruptures (bursts), causing a blood clot to form at the site of the rupture. The clot may block the supply of blood to the heart, triggering a heart attack.
Your risk of developing CHD is increased by:
- smoking
- a high-fat diet
- diabetes
- high cholesterol
- high blood pressure (hypertension)
- being overweight or obese
Find out more about the causes of CHD.
Less common causes
Some less common causes are described here.
Drug misuse
Using stimulants such as cocaine, amphetamines (speed) and methamphetamines (crystal meth) can cause coronary arteries to narrow, restricting blood supply and triggering a heart attack.
Heart attack from the use of cocaine is one of the most common causes of sudden death in young people.
Lack of oxygen in the blood (hypoxia)
If levels of oxygen in the blood decrease due to carbon monoxide poisoning or a loss of normal lung function, the heart will receive un-oxygenated blood.
This will result in the heart muscles being damaged, triggering a heart attack.
Page last reviewed: 8 August 2017
Next review due: 8 August 2020


Pricing Tables
- Basic
- $39.90
per month - Powerful and reliable Managed VPS hosting for small businesses, resellers and designers.
- 1 Database
- 5 GB Storage
- 20 Users
- Developer
- $89.90
per month - The best website hosting service for your blog, portfolio, or small business. Host 100 sites for one low price.
- 30 Databases
- Unlimited Storage
- Unlimited Users
- Daily Backups
- User
- $59.90
per month - Linux VPS web hosting gives you total control of your server environment - built for web developers.
- 20 Database
- 25 GB Storage
- 20 Users
- Basic
- $39.90
per month - Powerful and reliable Managed VPS hosting for small businesses, resellers and designers.
- 1 Database
- 5 GB Storage
- 20 Users
- Developer
- $89.90
per month - The best website hosting service for your blog, portfolio, or small business. Host 100 sites for one low price.
- 30 Databases
- Unlimited Storage
- Unlimited Users
- Daily Backups
- User
- $59.90
per month - Linux VPS web hosting gives you total control of your server environment - built for web developers.
- 20 Database
- 25 GB Storage
- 20 Users
- Basic
- $39.90
per month - Powerful and reliable Managed VPS hosting for small businesses, resellers and designers.
- 1 Database
- 5 GB Storage
- 20 Users
- Developer
- $89.90
per month - The best website hosting service for your blog, portfolio, or small business. Host 100 sites for one low price.
- 30 Databases
- Unlimited Storage
- Unlimited Users
- Daily Backups
- User
- $59.90
per month - Linux VPS web hosting gives you total control of your server environment - built for web developers.
- 20 Database
- 25 GB Storage
- 20 Users
Tables
| Year | Month | Gap | Version | Size |
|---|---|---|---|---|
| 2013 | Jun 4 | 82 | 10.8.4 | 152.0 MB |
| 2013 | Mar 14 | 161 | 10.8.3 | 249.0 MB |
| 2012 | Oct 4 | 15 | 10.8.2 | 26.7 MB |
| Year | Month | Gap | Version | Size |
|---|---|---|---|---|
| 2013 | Jun 4 | 82 | 10.8.4 | 152.0 MB |
| 2013 | Mar 14 | 161 | 10.8.3 | 249.0 MB |
| 2012 | Oct 4 | 15 | 10.8.2 | 26.7 MB |
| Year | Month | Gap | Version | Size |
|---|---|---|---|---|
| 2013 | Jun 4 | 82 | 10.8.4 | 152.0 MB |
| 2013 | Mar 14 | 161 | 10.8.3 | 249.0 MB |
| 2012 | Oct 4 | 15 | 10.8.2 | 26.7 MB |
| Year | Month | Gap | Version | Size |
|---|---|---|---|---|
| 2013 | Jun 4 | 82 | 10.8.4 | 152.0 MB |
| 2013 | Mar 14 | 161 | 10.8.3 | 249.0 MB |
| 2012 | Oct 4 | 15 | 10.8.2 | 26.7 MB |
| Year | Month | Gap | Version | Size |
|---|---|---|---|---|
| 2013 | Jun 4 | 82 | 10.8.4 | 152.0 MB |
| 2013 | Mar 14 | 161 | 10.8.3 | 249.0 MB |
| 2012 | Oct 4 | 15 | 10.8.2 | 26.7 MB |
| Year | Month | Gap | Version | Size |
|---|---|---|---|---|
| 2013 | Jun 4 | 82 | 10.8.4 | 152.0 MB |
| 2013 | Mar 14 | 161 | 10.8.3 | 249.0 MB |
| 2012 | Oct 4 | 15 | 10.8.2 | 26.7 MB |
| Year | Month | Gap | Version | Size |
|---|---|---|---|---|
| 2013 | Jun 4 | 82 | 10.8.4 | 152.0 MB |
| 2013 | Mar 14 | 161 | 10.8.3 | 249.0 MB |
| 2012 | Oct 4 | 15 | 10.8.2 | 26.7 MB |
| Year | Month | Gap | Version | Size |
|---|---|---|---|---|
| 2013 | Jun 4 | 82 | 10.8.4 | 152.0 MB |
| 2013 | Mar 14 | 161 | 10.8.3 | 249.0 MB |
| 2012 | Oct 4 | 15 | 10.8.2 | 26.7 MB |
| Year | Month | Gap | Version | Size |
|---|---|---|---|---|
| 2013 | Jun 4 | 82 | 10.8.4 | 152.0 MB |
| 2013 | Mar 14 | 161 | 10.8.3 | 249.0 MB |
| 2012 | Oct 4 | 15 | 10.8.2 | 26.7 MB |
| Year | Month | Gap | Version | Size |
|---|---|---|---|---|
| 2013 | Jun 4 | 82 | 10.8.4 | 152.0 MB |
| 2013 | Mar 14 | 161 | 10.8.3 | 249.0 MB |
| 2012 | Oct 4 | 15 | 10.8.2 | 26.7 MB |
Table Cell Highlight
| Year | Month | Gap | Version | Size |
|---|---|---|---|---|
| 2013 | Jun 4 | 82 | 10.8.4 | 152.0 MB |
| 2013 | Mar 14 | 161 | 10.8.3 | 249.0 MB |
| 2012 | Oct 4 | 15 | 10.8.2 | 26.7 MB |
| 2012 | Aug 23 | 29 | 10.8.1 | 24.2 MB |
| 2012 | Jul 25 | 77 | 10.8 | 4.1 GB |
| Year | Month | Gap | Version | Size |
|---|---|---|---|---|
| 2013 | Jun 4 | 82 | 10.8.4 | 152.0 MB |
| 2013 | Mar 14 | 161 | 10.8.3 | 249.0 MB |
| 2012 | Oct 4 | 15 | 10.8.2 | 26.7 MB |
| 2012 | Aug 23 | 29 | 10.8.1 | 24.2 MB |
| 2012 | Jul 25 | 77 | 10.8 | 4.1 GB |
Progress
Alert Boxes
Panels
This is a regular panel.
It has an easy to override visual styles.
This is a callout panel.
It's a little ostentatious, but useful for important content.
This is a yellow panel.
It has an easy to override visual styles.
This is a red panel.
It's a little ostentatious, but useful for important content.
This is a green panel.
It has an easy to override visual styles.
This is a bluegreen panel.
It's a little ostentatious, but useful for important content.
This is a lightblue panel.
It has an easy to override visual styles.
This is a blue panel.
It's a little ostentatious, but useful for important content.
This is a lightpurple panel.
It has an easy to override visual styles.
This is a orange panel.
It's a little ostentatious, but useful for important content.
This is a grey panel.
It's a little ostentatious, but useful for important content.
This is a success panel.
It's a little ostentatious, but useful for important content.


Hi! Thank you for visiting! My name is Ben Reilly and I am a software engineer who mostly does full-stack web development type-stuff.
I have many interests but my current hobby is machine learning, especially natural language processing and image translation. I like machine learning because it reminds me of the magical, uncanny, and deeply weird phenomena we can find in computers and the internet.
I like to see the internet, even all of the cold, mechanical, commercial, and horrifying parts of it, as a massive communal art project. It's a kind of mirror, a simlacrum of the human world made by millions of people at once. By looking at the artifacts we make, we have the opportunity to learn about how we perceive the world.
I made this app to showcase clean, simple react code, rock-solid authentication, API integration, a node/express server, and small database. Just sign in and paste a link to a photo in the box. Smart Face will detect faces in it!
Nous (pronounced like news) intends to make the experience of reading the news a little less distracting, ugly, and infuriating. Tell it what news source you'd like to read and it will grab the stories from the front page and run them through a machine learning algorithm that makes a guess about the sentiment, or emotional content of a story. It then renders that emotional content as a color, giving you the ability to decide whether or not you'd like to choose to read the story. ***Due to API Query Limits, I can't yet launch a live Demo. Message me if you'd like to try it out ***
Lennyroy codes is an online learning platform for basic web development and programming skills. The curriculum and the site itself are entirely developed by engineers who are either recently self taught or recent bootcamp graduates. We think this allows for a perspective closer to that of new learners. The current live version is still in alpha, we are currently rebuilding it as a react app.


Package org.lwjgl.system.windows
Class TOUCHINPUT
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.system.windows.TOUCHINPUT
-
- All Implemented Interfaces:
- java.lang.AutoCloseable, NativeResource, Pointer
public class TOUCHINPUT extends Struct
Encapsulates data for touch input.Member documentation
x
– the x-coordinate (horizontal point) of the touch input. This member is indicated in hundredths of a pixel of physical screen coordinates.y
– the y-coordinate (vertical point) of the touch input. This member is indicated in hundredths of a pixel of physical screen coordinates.hSource
– a device handle for the source input device. Each device is given a unique provider at run time by the touch input provider.dwID
– a touch point identifier that distinguishes a particular touch input. This value stays consistent in a touch contact sequence from the point a contact comes down until it comes back up. An ID may be reused later for subsequent contacts.dwFlags
– a set of bit flags that specify various aspects of touch point press, release, and motion. The bits in this member can be any reasonable combination of the values in the Remarks section.dwMask
– a set of bit flags that specify which of the optional fields in the structure contain valid values. The availability of valid information in the optional fields is device-specific. Applications should use an optional field value only when the corresponding bit is set indwMask
. This field may contain a combination of thedwMask
flags mentioned in the Remarks section.dwTime
– the time stamp for the event, in milliseconds. The consuming application should note that the system performs no validation on this field; when theUser32.TOUCHINPUTMASKF_TIMEFROMSYSTEM
flag is not set, the accuracy and sequencing of values in this field are completely dependent on the touch input provider.dwExtraInfo
– an additional value associated with the touch event.cxContact
– the width of the touch contact area in hundredths of a pixel in physical screen coordinates. This value is only valid if thedwMask
member has theUser32.TOUCHINPUTMASKF_CONTACTAREA
flag set.cyContact
– the height of the touch contact area in hundredths of a pixel in physical screen coordinates. This value is only valid if thedwMask
member has theUser32.TOUCHINPUTMASKF_CONTACTAREA
flag set.
Layout
struct TOUCHINPUT { LONG x; LONG y; HANDLE hSource; DWORD dwID; DWORD dwFlags; DWORD dwMask; DWORD dwTime; ULONG_PTR dwExtraInfo; DWORD cxContact; DWORD cyContact; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description static class
TOUCHINPUT.Buffer
An array ofTOUCHINPUT
structs.-
Nested classes/interfaces inherited from interface org.lwjgl.system.Pointer
Pointer.Default
-
-
Field Summary
Fields Modifier and Type Field and Description static int
SIZEOF
The struct size in bytes.-
Fields inherited from interface org.lwjgl.system.Pointer
POINTER_SHIFT, POINTER_SIZE
-
-
Constructor Summary
Constructors Constructor and Description TOUCHINPUT(java.nio.ByteBuffer container)
Creates aTOUCHINPUT
instance at the current position of the specifiedByteBuffer
container.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method and Description static TOUCHINPUT
calloc()
Returns a newTOUCHINPUT
instance allocated withmemCalloc
.static TOUCHINPUT.Buffer
calloc(int capacity)
Returns a newTOUCHINPUT.Buffer
instance allocated withmemCalloc
.static TOUCHINPUT
callocStack()
Returns a newTOUCHINPUT
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static TOUCHINPUT.Buffer
callocStack(int capacity)
Returns a newTOUCHINPUT.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static TOUCHINPUT.Buffer
callocStack(int capacity, MemoryStack stack)
Returns a newTOUCHINPUT.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static TOUCHINPUT
callocStack(MemoryStack stack)
Returns a newTOUCHINPUT
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static TOUCHINPUT
create()
Returns a newTOUCHINPUT
instance allocated withBufferUtils
.static TOUCHINPUT.Buffer
create(int capacity)
Returns a newTOUCHINPUT.Buffer
instance allocated withBufferUtils
.static TOUCHINPUT
create(long address)
static TOUCHINPUT.Buffer
create(long address, int capacity)
Create aTOUCHINPUT.Buffer
instance at the specified memory.int
cxContact()
Returns the value of thecxContact
field.int
cyContact()
Returns the value of thecyContact
field.long
dwExtraInfo()
Returns the value of thedwExtraInfo
field.int
dwFlags()
Returns the value of thedwFlags
field.int
dwID()
Returns the value of thedwID
field.int
dwMask()
Returns the value of thedwMask
field.int
dwTime()
Returns the value of thedwTime
field.long
hSource()
Returns the value of thehSource
field.static TOUCHINPUT
malloc()
Returns a newTOUCHINPUT
instance allocated withmemAlloc
.static TOUCHINPUT.Buffer
malloc(int capacity)
Returns a newTOUCHINPUT.Buffer
instance allocated withmemAlloc
.static TOUCHINPUT
mallocStack()
Returns a newTOUCHINPUT
instance allocated on the thread-localMemoryStack
.static TOUCHINPUT.Buffer
mallocStack(int capacity)
Returns a newTOUCHINPUT.Buffer
instance allocated on the thread-localMemoryStack
.static TOUCHINPUT.Buffer
mallocStack(int capacity, MemoryStack stack)
Returns a newTOUCHINPUT.Buffer
instance allocated on the specifiedMemoryStack
.static TOUCHINPUT
mallocStack(MemoryStack stack)
Returns a newTOUCHINPUT
instance allocated on the specifiedMemoryStack
.int
sizeof()
Returns thesizeof(struct)
.int
x()
Returns the value of thex
field.int
y()
Returns the value of they
field.-
Methods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toString
-
Methods inherited from interface org.lwjgl.system.NativeResource
close
-
-
-
-
Constructor Detail
-
TOUCHINPUT
public TOUCHINPUT(java.nio.ByteBuffer container)
Creates aTOUCHINPUT
instance at the current position of the specifiedByteBuffer
container. Changes to the buffer's content will be visible to the struct instance and vice versa.The created instance holds a strong reference to the container object.
-
-
Method Detail
-
sizeof
public int sizeof()
Description copied from class:Struct
Returns thesizeof(struct)
.
-
x
public int x()
Returns the value of thex
field.
-
y
public int y()
Returns the value of they
field.
-
hSource
public long hSource()
Returns the value of thehSource
field.
-
dwID
public int dwID()
Returns the value of thedwID
field.
-
dwFlags
public int dwFlags()
Returns the value of thedwFlags
field.
-
dwMask
public int dwMask()
Returns the value of thedwMask
field.
-
dwTime
public int dwTime()
Returns the value of thedwTime
field.
-
dwExtraInfo
public long dwExtraInfo()
Returns the value of thedwExtraInfo
field.
-
cxContact
public int cxContact()
Returns the value of thecxContact
field.
-
cyContact
public int cyContact()
Returns the value of thecyContact
field.
-
malloc
public static TOUCHINPUT malloc()
Returns a newTOUCHINPUT
instance allocated withmemAlloc
. The instance must be explicitly freed.
-
calloc
public static TOUCHINPUT calloc()
Returns a newTOUCHINPUT
instance allocated withmemCalloc
. The instance must be explicitly freed.
-
create
public static TOUCHINPUT create()
Returns a newTOUCHINPUT
instance allocated withBufferUtils
.
-
create
public static TOUCHINPUT create(long address)
-
malloc
public static TOUCHINPUT.Buffer malloc(int capacity)
Returns a newTOUCHINPUT.Buffer
instance allocated withmemAlloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
calloc
public static TOUCHINPUT.Buffer calloc(int capacity)
Returns a newTOUCHINPUT.Buffer
instance allocated withmemCalloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
create
public static TOUCHINPUT.Buffer create(int capacity)
Returns a newTOUCHINPUT.Buffer
instance allocated withBufferUtils
.- Parameters:
capacity
- the buffer capacity
-
create
public static TOUCHINPUT.Buffer create(long address, int capacity)
Create aTOUCHINPUT.Buffer
instance at the specified memory.- Parameters:
address
- the memory addresscapacity
- the buffer capacity
-
mallocStack
public static TOUCHINPUT mallocStack()
Returns a newTOUCHINPUT
instance allocated on the thread-localMemoryStack
.
-
callocStack
public static TOUCHINPUT callocStack()
Returns a newTOUCHINPUT
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.
-
mallocStack
public static TOUCHINPUT mallocStack(MemoryStack stack)
Returns a newTOUCHINPUT
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocate
-
callocStack
public static TOUCHINPUT callocStack(MemoryStack stack)
Returns a newTOUCHINPUT
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocate
-
mallocStack
public static TOUCHINPUT.Buffer mallocStack(int capacity)
Returns a newTOUCHINPUT.Buffer
instance allocated on the thread-localMemoryStack
.- Parameters:
capacity
- the buffer capacity
-
callocStack
public static TOUCHINPUT.Buffer callocStack(int capacity)
Returns a newTOUCHINPUT.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.- Parameters:
capacity
- the buffer capacity
-
mallocStack
public static TOUCHINPUT.Buffer mallocStack(int capacity, MemoryStack stack)
Returns a newTOUCHINPUT.Buffer
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
callocStack
public static TOUCHINPUT.Buffer callocStack(int capacity, MemoryStack stack)
Returns a newTOUCHINPUT.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
-


groupingBy
collectors could be expressed with
simpler toMap
collector which also will likely be more performant.
Example:
Collectors.groupingByConcurrent(String::length, Collectors.collectingAndThen(Collectors.maxBy(String::compareTo), Optional::get));
After the quick-fix is applied the result looks like:
Collectors.toConcurrentMap(String::length, Function.identity(), BinaryOperator.maxBy(String::compareTo));
This inspection only reports if the language level of the project or module is 8 or higher.
New in 2017.1


{% extends 'base.html' %} {% load static %} {% block head%}
{{ msg.text|safe }}
We'll post upcoming events here shortly


Plan With Us
Select Your Next Destination
Type of Travel
Urban
Rural
Nature
Roadtrip
Adventure
Paradise
Email Address
Send Request


Dear Sir/Madam, Do accept my sincere apologies if my mail does not meet your personal ethics. I will introduce myself as a staff in the accounts management section of a well-known bank here in the United Kingdom. One of our accounts with holding balance of £15,000,000(Fifteen Million British Pounds) has been dormant and has not been operated for the past 4 years. >From my investigations and confirmations, the owner of this account a foreigner by name Austin Martins died in August 2000 and since then nobody has done anything As regards the claiming of this money because he has no family members who are aware of the existence of neither the account nor the funds. Also Information From the National Immigration states that he was also single on entry into the UK. I have secretly discussed this matter with some of the bank officials and we have agreed to find a reliable foreign partner to deal with. We thus propose to do Business with you, standing in as the next of kin of these funds from the deceased and funds released to you after due processes have been followed. This transaction is totally free of risk and troubles as the fund is a legitimate and does not originate from drug, money laundry, terrorism or any other illegal act. On your interest, let me hear from you. Regards, Gordon. DISCLAIMER: This message contains confidential information and is intended only for specified addressee. If you are not the named addressee you should not disseminate, distribute or copy this e-mail. The sender therefore does not accept liability for any errors or omissions in the contents of this message, which arise as a result of e-mail transmission. Please note that we reserve the right to monitor and read any emails sent and received under the Telecommunications (Lawful Business Practice) (Interception of Communications) Regulations 2000. -------------------------- Posílejte SMS pøes internet zdarma a bez reklamy. Pouze s TISCALI. Více na http://www.tiscali.cz


Gems of Sri Lanka
Sri Lanka's nem industry has a very long and colorful history. Sri Lanka was affectionately known as RatnaDweepa which means Gem Island. The name is a reflection of its natural wealth. Marco Polo smote that the island had the best sapphires, topazes, amethysts, and other gems in the world. Ptolemy, the 2nd century astronomer recorded that beryl and sapphire were the mainstay of Sri Lanka's gem Industry. Records from r:••ariors that visited the island states that they brought back "Jewels of Serendib". Serendib was the ancient name given to the island by middle - eastern and Persian traders that crossed the Indian Ocean to trade gems from Sri Lanka to the East durino the 4th and 5th century.
Sri Lanka, geologically speaking is an extremely old country. Ninety percent of the rocks of the island are of Precambrian age, 560 million to 2,400 million years ago. The gems form in sedimentary residual gem deposits, eluvial deposits, metamorphic deposits, skarn and calcium -rich rocks. Other gems are of magmatic origin.
Res/dual deposits are mainly found in flood plains of rivers and streams. The metamorphic types of gems constitute 90% of the gem deposits in Sri Lanka. Sn Lanka has the highest density of gem deposits compared to its landmass. Ratnapura contains the most gem deposits and derived its name front the gem industry. Ratnapura means "city of gems".
The blue sapphires from Sri Lanka are known as Ceylon Sapphire. Ceylon Sapphires are reportedly unique in colour, clarity and lustre compared to the blue sapphires from other countnes.
Rathnapura
Ratnapura ("City of Gems") is a major city in Sri Lanka. It is the capital city of Sabaragamuwa Province, Sri Lanka and . , the Ratnapura District. The name 'Ratnapura' is a direct Sanskrit word meaning City (from the sanskrit word 'Pura') of Gems (from the sanskrit word 'Ratna') over 2000 years when the first Buddhist monks arrived here from the north eastern provinces of India namely Bodh-Gaya, Varanasi and Patliputra they not only did bring with them the Buddhist religion but since their teachings were mainly in Sansknt and Marthilee they also influenced the local language, the palm candy produced traditionally in this region, but the more common explanation in Sri Lanka is that it comes from the Sinhala "ratna" meaning gems and "pura" meaning city.Ratnapura is also spelled as Rathnapura. Located some 101 km south east of capital Colombo.
It is the centre of a long-established industry of precious stone mining including rubies, sapphires, and other gems. Apart front gem mining, the city is known for nce and (nut cultivations. Large plantations often and rubber surround the city. Tea grown in this remon is called low -country tea. There is a well -established tourism industry in Ratnapina. Sinharaja Forest Reserve, lidawalawe National Park, Kitulgala, and Adam's Peak are especially popular among tounsts
The people of the town depends on the gem trade. Gent pits common site In the surrounding area. Most of the large-scale gem businessmen of Sri Lanka operate from Ratnapura. There are considerable numbers of foreign gem traders in the city too. Among the foreign traders, Thai (Thailand) traders are in the majority. Every day, large number of traders from suburbs and other towns gather In the town centre to sell or buy gemstones. Large-scale merchants collect gemstones from locals and sell them in the internatronal market. Some traders go out of the city to buy gems. This includes neighboring towns like Kalawana, Bogawantalawa, and Ela-era. After the discovery of world -class alluvial sapphire deposits in the valley of Ilakaka in Madagascar, many Ratnapura merchants travel out of the country to Madagascar to buy gems.
Gems
Fromtime immemorial oems have been used by people in different ways. It has curative power as well as the power to pour in fortune and drive away the evil of our planetary position. Certain gems and stones have magical powers of healing and fortune giving. Gems have made life happier to many individuals.
Gems can be selected on the basis of our Zodiac or the star we are born under. Gems can also be chosen according to our names first letter, date of birth and month of birth.
It will be interesting to note that some gems have with then) the perennial power to push us forward in an occupation. Many professionals, businessmen and service persons have been benefited from time immemorial by wearing the gem which increases their respective occupations and get them multiple profits and lessens the scope of loss and protect them front all adversaries. A person aspiring to join films can wear Cat's Eye or Garnet by selecting it according to his date of birth or star and get to the top position. Similarly there is a gent for every occupation. Gems work magically and do wonders when we make the ring at the appropriate period of the transit of planets, and alter doing the necessary rituals.
Gems stones are useful for our health, longevity, name, fame, prosperity and all fortunes. In ancient times, kings and princes stored gem stones in their treasury to ensure prosperity. They also set these gem stones in jewellery and wore them with pride. Gem stones have had different effects on the different people. There have been instances where childless women after weanna a particular gem began conceiving. Some kings got victorious in the battles by wearing some prescribed gems. Certain gem stones are known to have cured people of some diseases. As a result of these auspicious effects some ancient scholars began conducting research about these stones. Their experiments testified to the beneficial effects of gems and stones. This inspired different types of studies about gents, which developed as science of gemology. Thus Varaha Mihira, one of the greatest ancient scholars wrote a book about gems called Ratna Dipika
Wearing correct gem stones at suitable times has proved very helpful in achieving success in wealth, health and other matters. There are so many gem stones in existence but of all these only nine gem stones are considered as 'Precious Gems' These are called the'Nay Ratna'. Although there are many gent stones in the world, these nine gent stones have been only given importance by our ancient people. These are powerful gems in reflecting the strength of planets, and also producing changes in our body.


| 1 | /* | |
| 2 | * Copyright 2009-present, Stephen Colebourne | |
| 3 | * | |
| 4 | * Licensed under the Apache License, Version 2.0 (the "License"); | |
| 5 | * you may not use this file except in compliance with the License. | |
| 6 | * You may obtain a copy of the License at | |
| 7 | * | |
| 8 | * http://www.apache.org/licenses/LICENSE-2.0 | |
| 9 | * | |
| 10 | * Unless required by applicable law or agreed to in writing, software | |
| 11 | * distributed under the License is distributed on an "AS IS" BASIS, | |
| 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| 13 | * See the License for the specific language governing permissions and | |
| 14 | * limitations under the License. | |
| 15 | */ | |
| 16 | package org.joda.money; | |
| 17 | ||
| 18 | /** | |
| 19 | * Provider for available currencies. | |
| 20 | */ | |
| 21 | public abstract class CurrencyUnitDataProvider { | |
| 22 | ||
| 23 | /** | |
| 24 | * Registers all the currencies known by this provider. | |
| 25 | * | |
| 26 | * @throws Exception if an error occurs | |
| 27 | */ | |
| 28 | protected abstract void registerCurrencies() throws Exception; | |
| 29 | ||
| 30 | /** | |
| 31 | * Registers a currency allowing it to be used. | |
| 32 | * <p> | |
| 33 | * This method is called by {@link #registerCurrencies()} to perform the | |
| 34 | * actual creation of a currency. | |
| 35 | * | |
| 36 | * @param currencyCode the currency code, not null | |
| 37 | * @param numericCurrencyCode the numeric currency code, -1 if none | |
| 38 | * @param decimalPlaces the number of decimal places that the currency | |
| 39 | * normally has, from 0 to 3, or -1 for a pseudo-currency | |
| 40 | */ | |
| 41 | protected final void registerCurrency(String currencyCode, int numericCurrencyCode, int decimalPlaces) { | |
| 42 | CurrencyUnit.registerCurrency(currencyCode, numericCurrencyCode, decimalPlaces, true); | |
| 43 | } | |
| 44 | ||
| 45 | /** | |
| 46 | * Registers a country allowing it to be used. | |
| 47 | * <p> | |
| 48 | * This method is called by {@link #registerCurrencies()} to perform the | |
| 49 | * actual creation of a country. | |
| 50 | * | |
| 51 | * @param countryCode the country code, not null | |
| 52 | * @param currencyCode the currency code, not null | |
| 53 | */ | |
| 54 | protected final void registerCountry(String countryCode, String currencyCode) { | |
| 55 |
1
1. registerCountry : removed call to org/joda/money/CurrencyUnit::registerCountry → SURVIVED |
CurrencyUnit.registerCountry(countryCode, CurrencyUnit.of(currencyCode)); |
| 56 | } | |
| 57 | ||
| 58 | } | |
Mutations | ||
| 55 |
1.1 |


Java developer by day, iOS developer by night. Graduated from UC Santa Cruz with a Computer Science B.S. in August 2014. I am passionate about startups and working with the full stack. I am excited about having both a deep and broad understanding of the project I am working on, and crave learning new technologies to achieve this.
While I'm not typing away, you can find me at the piano playing my favorite Beethoven and Liszt pieces, riding my bike, or taking a stroll with my rambunctious dachshund named Doc. If you'd like to get in touch, shoot me an email below or find more information on my resume.
Email<EMAIL_ADDRESS>Phone:<PHONE_NUMBER>


XF.device
contains the information about current user device app was launched:
XF.device.supports.touchEvents
XF.device.supports.pointerEvents
XF.device.supports.cssAnimations
XF.device.isMobile
. It was a necessary trick to detect mobile OS's using navigator.userAgent
.XF.device.type
is a selected type of devices from specified in options passed on the start of application. Based on this selected device type the necessary template for the component will be loaded.var app = new MyApp({
// …
// other settings for the application
device: {
types : [{
name : 'tablet',
range : {
max : 1024,
min : 569
},
templatePath : 'tablet/' // template path for tablet devices (by default it will be tmpl/tablet/componentName.tmpl)
}, {
name : 'phone',
range : {
max : 568,
min : null
},
templatePath : 'phone/' // path to templates for phones (by default it will be tmpl/phone/componentName.tmpl)
}]
}
});


|
|||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |
See:
Description
| Interface Summary | |
|---|---|
| Killer | An implementation of the killing interface provides a way of defeating a match between a mention and a mention chain. |
| Matcher | An implementation of the matching interface provides a score for matching a mention against a mention chain. |
| Mention | An instance of Mention represents a single mention of
a given phrase in context. |
| MentionChain | A MentionChain represents a set of mentions that have
been resolved as coreferent in that they refer to the same
underlying entity. |
| MentionFactory | A MentionFactory is responsible for creating
and merging mentions and mention chains. |
| Class Summary | |
|---|---|
| AbstractMentionChain | An abstract implementation of a mention chain in terms of matching and killing functions. |
| AbstractMentionFactory | The AbstractMentionFactory class implements the
mention factory interface using linguistically-motivated abstract
methods. |
| BooleanMatcherAdapter | Provides a means of implementing a Matcher that returns a
constant value if a boolean condition is satisifed and the no-match
score otherwise. |
| CachedMention | A CachedMention stores all of the retun values
specified by the Mention interface. |
| EnglishMentionFactory | A mention factory for English phrases. |
| MentionChainImpl | An implementation of mention chains. |
| WithinDocCoref | A WithinDocCoref object handles resolution of
coreference relations between mentions of entities. |
Classes for determining entity coreference within documents.
|
|||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |


Cookie Consent Tools
Message Mode
Choice Mode
Headless (no banner)
In headless mode, cookie Manager is used to set, reset or get consent status.
Reset consent
Give consent
Revoke consent
Has consent?
Has made a choice?


Its Grip is Subtle to Start ...
My first few uses didn't do 'it.' I knew that I just wasn't getting it.  Perhaps I should have quit while I was ahead.
I started hanging out with crack heads. Man were they paranoid. Walking into their house was a different world. Every window had a blanket over it, the phone never stopped, the energy in the place was so high strung. I mean if paranoia had a smell you could smell it there. And there I was. A rookie. A green horn. It must have irritated everyone because I asked so many questions, even before I was high.
At first these guys wouldn't let me smoke the 'hard.' They wanted me to stick to lines. I didn't take their warnings seriously, and soon enough (after hanging out for a few consecutive days) I was able to convince them to let me have at it.
And again I got nothing out of it. A slight tingling in my head that wasn't worth 100 bucks a gram. But later that night everything changed. To this day I have a new voice in my consciousness (and that's not melodramatic exaggerating either)
Yeah, it happened that night. All of them were sitting around the spoon, as always, and looking like they were in and out of crack heaven. I said 'what the hell' and again bought just a ten piece. Yup, just a little toot. Though, it was a bigger chunk than I had ever done before. I remember watching it melt into the brillo and feeling a little nervous.
Instant addiction? My senses changed. My hearing was as if I was in like a steel tunnel that had water rushing in it. Everything had a sort of drowned out sound to it. I collapsed on the table, half on purpose, with this dazed and euphoric look on my face. The other guys didn't even really notice, so I drew attention to myself. 'Wow guys! Wow' One of them looked concerned. Later he'd tell me that he didn't want me to end up like them, and my crack use really bothered him.
For the next half hour I was a raging crack head. I had like 70 bucks left to my name that me and my girlfriend were depending on for groceries the next day. I spent all but 20 of it, buying chunk after chunk. I couldn't stop, and I didn't want to.
That was months ago now. That girl I was with, who I had been with for 3 years? I'm missing her now. Crack still has a voice in my head. I do it maybe twice or three times a month, and have been for the last several months. Some may say that that's good, that I didn't go overboard. But I tell you, not a day goes by that I don't think about it at some point. I smell it from time to time for no apparent reason. And some days I want it so bad that I'll almost steal for it.
I live at home again. I'm 27 years old and feel like 'anytime now, you can start your life anytime now...I'm waiting!' Nothing really motivates me though. I don't much care for money or getting the best career. I want to care, but now I don't. I'm single and wish I hadn't messed up. Maybe I'm not a crack head, but crack is in my head, and my life hasn't been quite the same since I've become involved with it. And even though I know I'd probably be better off without it, a part of me knows damn well that the next time I'm wanting it, I'll get it.
Oh, and for those users in the early stages who feel like they haven't had that bad of a come down yet? Don't worry, keep going, it's coming. I've partaken in my fair share of floor crawls. Not to mention hours of coming down wondering where the hell my life is headed and why I seem to have so little to say about it.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


What string in the patternType-match should trigger a glob pattern? [G]
The capture group name holding the maximum depth of the bucket [maxDepth]
An XRegExp regular expression describing the pattern of bucket nodes. It should hold the capture groups specified by patternGroupName, patternTypeGroupName and maxDepthGroupName
The capture group name holding the bucket entry pattern [pattern]
The capture group name holding the bucket entry pattern type [patternType]
What string in the patternType-match should trigger a RegExp pattern? [R]
Generated using TypeDoc
A pattern for BucketNode declarations


Contact Us
Contact Information
Please note that calls may be monitored or recorded for the purposes of quality control. Please also be aware we don't have a showroom, we offer competitive prices over the internet, and visit numerous national consumer shows throughout the year
Customer support opening hours
Monday to Friday 9am to 5pm
If all support staff are busy, please leave a message and we will return your call as soon as we can - usually within 24 hours.
Customer Service Telephone: 0161 320 3001
Email<EMAIL_ADDRESS>Sale's Hotline: 0161 322 3300
Head Office Address
- Smartebusiness
- 41a Newton Street
- Greater Manchester
- M1 1FT
- United Kingdom


isambard.ampal.base_ampal module¶
Contains the base and common classes for all AMPAL objects.
-
class
Atom
(coordinates, element, atom_id=' ', res_label=None, occupancy=1.0, bfactor=1.0, charge=' ', state='A', ampal_parent=None)[source]¶ Bases:
object
Object containing atomic coordinates and element information.
Notes
Atom is an AMPAL object, but it does not inherit from BaseAmpal.
Parameters: - coordinates (3D Vector (tuple, list, numpy.array)) – Position of Atom in 3D space.
- element (str) – Element of Atom.
- atom_id (str) – Identifier for Atom, usually a number.
- res_label (str, optional) – Label used in Monomer to refer to the Atom type i.e. “CA” or “OD1”.
- occupancy (float, optional) – The occupancy of the Atom.
- bfactor (float, optional) – The bfactor of the Atom.
- charge (str, optional) – The point charge of the Atom.
- state (str) – The state of this Atom. Used to identify Atoms with a number of conformations.
- ampal_parent (ampal.Monomer, optional) – A reference to the Monomer containing this Atom.
-
id
¶ str – Identifier for Atom, usually a number.
-
res_label
¶ str – Label used in Monomer to refer to the Atom type i.e. “CA” or “OD1”.
-
element
¶ str – Element of Atom.
-
ampal_parent
¶ ampal.Monomer –
- A reference to the Monomer containing this Atom.
- number of conformations.
dict – A dictionary containing information about this AMPAL object. The tags dictionary is used by AMPAL to cache information about this object, but is also intended to be used by users to store any relevant information they have.
-
__add__
(other)[source]¶ Adds coordinates and returns a numpy.array.
Notes
Objects themselves remain unchanged.
-
__sub__
(other)[source]¶ Subtracts coordinates and returns a numpy.array.
Notes
Objects themselves remain unchanged.
-
array
¶ Converts the atomic coordinate to a numpy.array.
-
rotate
(angle, axis, point=None, radians=False)[source]¶ Rotates Atom by angle.
Parameters: - angle (float) – Angle that Atom will be rotated.
- axis (3D Vector (tuple, list, numpy.array)) – Axis about which the Atom will be rotated.
- point (3D Vector (tuple, list, numpy.array), optional) – Point that the axis lies upon. If None then the origin is used.
- radians (bool, optional) – True is angle is define in radians, False is degrees.
-
unique_id
¶ Creates a unique ID for the Atom based on its parents.
Returns: unique_id – (polymer.id, residue.id, atom.id) Return type: (str, str, str)
-
x
¶ The x coordinate.
-
y
¶ The y coordinate.
-
z
¶ The z coordinate.
-
class
BaseAmpal
[source]¶ Bases:
object
Base class for all AMPAL objects except ampal.atom.
Raises: NotImplementedError
– BaseAmpal is an abstract base class and is not intended to be instanciated. A NotImplementedError is raised if a method is called that is required on a child class but is not implemented in BaseAmpal.-
assign_force_field
(ff, mol2=False)[source]¶ Assigns force field parameters to Atoms in the AMPAL object.
Parameters: - ff (BuffForceField) – The force field to be used for scoring.
- mol2 (bool, optional) – If true, mol2 style labels will also be used.
-
buff_internal_energy
¶ Calculates the internal energy of the AMPAL object.
This method is assigned to the buff_internal_energy property, using the default arguments.
Parameters: - assign_ff (bool, optional) – If true the force field will be updated if required.
- ff (BuffForceField, optional) – The force field to be used for scoring.
- mol2 (bool, optional) – If true, mol2 style labels will also be used.
- force_ff_assign (bool, optional) – If true, the force field will be completely reassigned, ignoring the cached parameters.
Returns: BUFF_score – A BUFFScore object with information about each of the interactions and the atoms involved.
Return type: BUFFScore
-
centre_of_mass
¶ Returns the centre of mass of AMPAL object.
Notes
All atoms are included in calculation, call centre_of_mass manually if another selection is require.
Returns: centre_of_mass – 3D coordinate for the centre of mass. Return type: numpy.array
-
get_internal_energy
(assign_ff=True, ff=None, mol2=False, force_ff_assign=False)[source]¶ Calculates the internal energy of the AMPAL object.
This method is assigned to the buff_internal_energy property, using the default arguments.
Parameters: - assign_ff (bool, optional) – If true the force field will be updated if required.
- ff (BuffForceField, optional) – The force field to be used for scoring.
- mol2 (bool, optional) – If true, mol2 style labels will also be used.
- force_ff_assign (bool, optional) – If true, the force field will be completely reassigned, ignoring the cached parameters.
Returns: BUFF_score – A BUFFScore object with information about each of the interactions and the atoms involved.
Return type: BUFFScore
-
is_within
(cutoff_dist, point)[source]¶ Returns all atoms in ampal object within cut-off distance from the point.
-
pdb
¶ Runs make_pdb in default mode.
-
rmsd
(other, backbone=False)[source]¶ Calculates the RMSD between two AMPAL objects.
Notes
No fitting operation is performs and both AMPAL objects must have the same number of atoms.
Parameters: - other (AMPAL Object) – Any AMPAL object with get_atoms method.
- backbone (bool, optional) – Calculates RMSD of backbone only.
-
rotate
(angle, axis, point=None, radians=False, inc_alt_states=True)[source]¶ Rotates every atom in the AMPAL object.
Parameters: - angle (float) – Angle that AMPAL object will be rotated.
- axis (3D Vector (tuple, list, numpy.array)) – Axis about which the AMPAL object will be rotated.
- point (3D Vector (tuple, list, numpy.array), optional) – Point that the axis lies upon. If None then the origin is used.
- radians (bool, optional) – True is angle is define in radians, False is degrees.
- inc_alt_states (bool, optional) – If true, will rotate atoms in all states i.e. includes alternate conformations for sidechains.
-
translate
(vector, inc_alt_states=True)[source]¶ Translates every atom in the AMPAL object.
Parameters:
-
update_ff
(ff, mol2=False, force_ff_assign=False)[source]¶ Manages assigning the force field parameters.
The aim of this method is to avoid unnecessary assignment of the force field.
Parameters: - ff (BuffForceField) – The force field to be used for scoring.
- mol2 (bool, optional) – If true, mol2 style labels will also be used.
- force_ff_assign (bool, optional) – If true, the force field will be completely reassigned, ignoring the cached parameters.
-
-
class
Monomer
(atoms=None, monomer_id=' ', ampal_parent=None)[source]¶ Bases:
isambard.ampal.base_ampal.BaseAmpal
Groups of Atoms that form Polymers.
Parameters: - atoms (OrderedDict or {OrderedDict}, optional) – OrderedDict containing Atoms for the Monomer. OrderedDict is used to maintain the order items were added to the dictionary.
- monomer_id (str, optional) – String used to identify the residue.
- ampal_parent (Polymer, optional) – A reference to the Polymer containing this Monomer.
-
states
¶ dict – Contains an OrderedDicts containing atom information for each state available for the Monomer.
-
id
¶ str – String used to identify the residue.
-
ampal_parent
¶ Polymer or None – A reference to the Polymer containing this Monomer.
dict – A dictionary containing information about this AMPAL object. The tags dictionary is used by AMPAL to cache information about this object, but is also intended to be used by users to store any relevant information they have.
-
active_state
¶ Defines which state dictionary should be used currently.
-
atoms
¶ Atoms in the currently active state.
-
close_monomers
(group, cutoff=4.0)[source]¶ Returns a list of Monomers from within a cut off distance of the Monomer
Parameters: Returns: nearby_residues – List of Monomers within cut off distance.
Return type: [Monomers]
-
get_atoms
(inc_alt_states=False)[source]¶ Returns all atoms in the Monomer.
Parameters: inc_alt_states (bool, optional) – If True, will return Atoms for alternate states.
-
class
Polymer
(monomers=None, ligands=None, polymer_id=' ', molecule_type='', ampal_parent=None, sl=2)[source]¶ Bases:
isambard.ampal.base_ampal.BaseAmpal
A container that holds Monomer type objects.
Notes
Polymer has a simple hierarchy: A Polymer contains one or more Monomer.
Parameters: - monomers (Monomer or [Monomer], optional) – Monomer or list containing Monomer objects to form the Polymer().
- ligands (LigandGroup, optional) – Ligands associated with the Polymer.
- polymer_id (str, optional) – An ID that the user can use to identify the Polymer. This is used when generating a pdb file using Polymer().pdb.
- molecule_type (str, optional) – A description of the type of Polymer i.e. Protein, DNA etc.
- ampal_parent (ampal.Assembly, optional) – Reference to Assembly containing the Polymer.
- sl (int, optional) – The default smoothing level used when calculating the backbone primitive.
-
id
¶ str – Polymer ID
-
ampal_parent
¶ ampal.Assembly or None – Reference to Assembly containing the Polymer.
-
molecule_type
¶ str – A description of the type of Polymer i.e. Protein, DNA etc.
-
ligands
¶ ampal.LigandGroup – A LigandGroup containing all the Ligands associated with this Polymer chain.
dict – A dictionary containing information about this AMPAL object. The tags dictionary is used by AMPAL to cache information about this object, but is also intended to be used by users to store any relevant information they have.
-
sl
¶ int – The default smoothing level used when calculating the backbone primitive.
Raises: TypeError
– Polymer objects can only be initialised empty, using a Monomer or a list of Monomers.-
extend
(polymer)[source]¶ Extends the Polymer with the contents of another Polymer.
Notes
Does not update labelling.
-
get_atoms
(ligands=True, inc_alt_states=False)[source]¶ Flat list of all the Atoms in the Polymer.
Parameters: inc_alt_states (bool) – If true atoms from alternate conformations are included rather than only the “active” states. Returns: atoms – Returns an iterator of all the atoms. Convert to list if you require indexing. Return type: itertools.chain
-
get_monomers
(ligands=True)[source]¶ Retrieves all the Monomers from the AMPAL object.
Parameters: ligands (bool, optional) – If true, will include ligand Monomers.
-
get_reference_coords
()[source]¶ Gets list of coordinates of all reference atoms in the Polymer.
Returns: ref_coords – List has the same length as the Polymer. The first, second and third elements of array i contain the x, y and z coordinates of the i-th reference atom. Return type: [numpy.array]
-
make_pdb
(alt_states=False, inc_ligands=True)[source]¶ Generates a PDB string for the Polymer.
Parameters: Returns: pdb_str – String of the pdb for the Polymer. Generated using information from the component Monomers.
Return type:
-
centre_of_atoms
(atoms, mass_weighted=True)[source]¶ Returns centre point of any list of atoms.
Parameters: - atoms (list) – List of AMPAL atom objects.
- mass_weighted (bool, optional) – If True returns centre of mass, otherwise just geometric centre of points.
Returns: centre_of_mass – 3D coordinate for the centre of mass.
Return type: numpy.array
-
find_atoms_within_distance
(atoms, cutoff_distance, point)[source]¶ Returns atoms within the distance from the point.
Parameters: Returns: filtered_atoms – atoms list filtered by distance.
Return type: [ampal.atoms]
-
write_pdb
(residues, chain_id=' ', alt_states=False, strip_states=False)[source]¶ Writes a pdb file for a list of residues.
Parameters: - residues (list) – List of Residue objects.
- chain_id (str) – String of the chain id, defaults to ‘ ‘.
- alt_states (bool, optional) – If true, include all occupancy states of residues, else outputs primary state only.
- strip_states (bool, optional) – If true, remove all state labels from residues. Only use with alt_states false.
Returns: pdb_str – String of the PDB file.
Return type:


We are always here to help. If you have queries about our services, please fill up the contact form below and we'll do our best to reply within 24 hours. Alternatively,simply pickup the phone and give us a call.
Monday - Sunday : 9am - 6pm(GMT+8)
C.D.G. North Avenue, Tagbilaran City, 6300 Bohol


Paco Nathan
@pacoid
slideshare.net/pacoid
Problems getting interdisciplinary teams working together
Enterprise Data Workflows


Hello, welcome to「Suka」!
Hexo is a static site generator which is based on Node.js. You can learn how to install Hexo and generate your own website or blog at Hexo’s Official Documents.
In this documentation, we suppose you have already successfully installed hexo and finished
hexo init
to set up a site.
There are two configuration files in Hexo Project, one in the root directory of your Hexo Project and the other in the theme directory. For the convenience of description, the former is referred to as site config
and the latter as theme config
.
Before using “Suka” theme, please read Hexo’s Official Documents carefully and configure the basic configuration, such as title, subtitle, description, author, timezone, language etc.
The latest release. Recommended for most users.
This build may be unstable, but it includes the latest features. Recommended for developers and advanced users.
You can decide which version to use. Some releases are no longer supported.
Choose the version you want to deploy, expand Assets
tab in releases page, and download Source Code (zip).
Here is an example of downloading version 0.2.0:
Unpack it and rename it to suka
, and then move it to themes
directory of your Hexo Project.
With git you can decide which version and branch you want to use. You can use git pull
to update the theme if you goes this way.
cd themes
git clone https://github.com/SukkaW/hexo-theme-suka.git suka
cd suka
git checkout {branch/tags name/commit hash}
When installing “Suka” you need extra steps which is diffrent from other themes. First you need to enter themes directory and install dependencies for “Suka”.
cd themes/suka
npm install --production
Then you need to make a copy of _config.example.yml
and rename it to _config.yml
.
cp -i _config.example.yml _config.yml
With the theme being developed, the theme config template will change. By copying the config you can avoid potential conflicts for users who use git pull to upgrade the theme.
If you are using git for your Hexo Project or you are using CI to generate and deploy your site, please read [Advanced Setting - CI] for more details.
Now go back to the root directory of your Hexo Project, then execute:
cat themes/suka/site_config.yml >> _config.yml
Now your site config
should look like:
# Extensions
## Plugins: https://hexo.io/plugins/
## Themes: https://hexo.io/themes/
theme: landscape
# Suka Theme config
# Documents: https://theme-suka.skk.moe/docs/
suka_theme:
search:
enable: false
path: search.json
field: post # Page | Post | All. Default post
prism:
enable: false
line_number: true
theme: default
Change theme
key’s value to suka
.
# Extensions
## Plugins: https://hexo.io/plugins/
## Themes: https://hexo.io/themes/
-theme: landscape
+theme: suka
# Suka Theme config
# Documents: https://theme-suka.skk.moe/docs/
suka_theme:
search:
path: search.json
field: post # Page | Post | All. Default post
prism:
line_number: true
theme: default
Run the command below to start a local Hexo Server.
hexo s --debug
During the service startup process, pay attention any abnormal outputs. If you want to report issues, those information will help.
When the output looks like the lines below
INFO Hexo is running at http://localhost:4000/. Press Ctrl+C to stop.
It means Hexo is already running on your device, check https://localhost:400 in your browser.
If you have any problem using “Suka”, try searching in the documentation at sidebar or open new issue at GitHub.
If you downloaded “Suka” from a GitHub release, you should rename your theme directory from suka
to suka-old
, and rename the newer version of “Suka” directory to suka
. Then follow the guide at changelog to migrate your configuration to the newer version. You can delete suka-old
directory afterwards if you want.
If you use git to download “Suka”, you need to backup your theme config
(for example, rename it to _config.old.yml
), and then run git pull
to update “Suka”. You will see a new _config.example.yml
. Make a copy of it and rename it as _config.yml
. Now you can migrate your settings from _config.old.yml
to _config.yml
. After the test you can delete _config.old.yml
.


|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.awt.geom.Line2D
public abstract class Line2D
This Line2D
represents a line segment in (x, y)
coordinate space. This class, like all of the Java 2D API, uses a
default coordinate system called user space in which the y-axis
values increase downward and x-axis values increase to the right. For
more information on the user space coordinate system, see the
Coordinate Systems section of the Java 2D Programmer's Guide.
This class is only the abstract superclass for all objects that store a 2D line segment. The actual storage representation of the coordinates is left to the subclass.
| Nested Class Summary | |
|---|---|
static class |
Line2D.Double
A line segment specified with double coordinates. |
static class |
Line2D.Float
A line segment specified with float coordinates. |
| Constructor Summary | |
|---|---|
protected |
Line2D()
This is an abstract class that cannot be instantiated directly. |
| Method Summary | |
|---|---|
Object |
clone()
Creates a new object of the same class as this object. |
boolean |
contains(double x,
double y)
Tests if a specified coordinate is inside the boundary of this Line2D . |
boolean |
contains(double x,
double y,
double w,
double h)
Tests if the interior of this Line2D entirely contains
the specified set of rectangular coordinates. |
boolean |
contains(Point2D p)
Tests if a given Point2D is inside the boundary of
this Line2D . |
boolean |
contains(Rectangle2D r)
Tests if the interior of this Line2D entirely contains
the specified Rectangle2D . |
Rectangle |
getBounds()
Returns the bounding box of this Line2D . |
abstract Point2D |
getP1()
Returns the starting Point2D of this
Line2D . |
abstract Point2D |
getP2()
Returns the end Point2D of this Line2D . |
PathIterator |
getPathIterator(AffineTransform at)
Returns an iteration object that defines the boundary of this Line2D . |
PathIterator |
getPathIterator(AffineTransform at,
double flatness)
Returns an iteration object that defines the boundary of this flattened Line2D . |
abstract double |
getX1()
Returns the X coordinate of the start point in double precision. |
abstract double |
getX2()
Returns the X coordinate of the end point in double precision. |
abstract double |
getY1()
Returns the Y coordinate of the start point in double precision. |
abstract double |
getY2()
Returns the Y coordinate of the end point in double precision. |
boolean |
intersects(double x,
double y,
double w,
double h)
Tests if this Line2D intersects the interior of a
specified set of rectangular coordinates. |
boolean |
intersects(Rectangle2D r)
Tests if this Line2D intersects the interior of a
specified Rectangle2D . |
boolean |
intersectsLine(double X1,
double Y1,
double X2,
double Y2)
Tests if the line segment from (X1, Y1) to (X2, Y2) intersects this line segment. |
boolean |
intersectsLine(Line2D l)
Tests if the specified line segment intersects this line segment. |
static boolean |
linesIntersect(double X1,
double Y1,
double X2,
double Y2,
double X3,
double Y3,
double X4,
double Y4)
Tests if the line segment from (X1, Y1) to (X2, Y2) intersects the line segment from (X3, Y3) to (X4, Y4). |
double |
ptLineDist(double PX,
double PY)
Returns the distance from a point to this line. |
static double |
ptLineDist(double X1,
double Y1,
double X2,
double Y2,
double PX,
double PY)
Returns the distance from a point to a line. |
double |
ptLineDist(Point2D pt)
Returns the distance from a Point2D to this line. |
double |
ptLineDistSq(double PX,
double PY)
Returns the square of the distance from a point to this line. |
static double |
ptLineDistSq(double X1,
double Y1,
double X2,
double Y2,
double PX,
double PY)
Returns the square of the distance from a point to a line. |
double |
ptLineDistSq(Point2D pt)
Returns the square of the distance from a specified Point2D to this line. |
double |
ptSegDist(double PX,
double PY)
Returns the distance from a point to this line segment. |
static double |
ptSegDist(double X1,
double Y1,
double X2,
double Y2,
double PX,
double PY)
Returns the distance from a point to a line segment. |
double |
ptSegDist(Point2D pt)
Returns the distance from a Point2D to this line
segment. |
double |
ptSegDistSq(double PX,
double PY)
Returns the square of the distance from a point to this line segment. |
static double |
ptSegDistSq(double X1,
double Y1,
double X2,
double Y2,
double PX,
double PY)
Returns the square of the distance from a point to a line segment. |
double |
ptSegDistSq(Point2D pt)
Returns the square of the distance from a Point2D to
this line segment. |
int |
relativeCCW(double PX,
double PY)
Returns an indicator of where the specified point (PX, PY) lies with respect to this line segment. |
static int |
relativeCCW(double X1,
double Y1,
double X2,
double Y2,
double PX,
double PY)
Returns an indicator of where the specified point (PX, PY) lies with respect to the line segment from (X1, Y1) to (X2, Y2). |
int |
relativeCCW(Point2D p)
Returns an indicator of where the specified Point2D
lies with respect to this line segment. |
abstract void |
setLine(double X1,
double Y1,
double X2,
double Y2)
Sets the location of the endpoints of this Line2D to
the specified double coordinates. |
void |
setLine(Line2D l)
Sets the location of the endpoints of this Line2D to
the same as those endpoints of the specified Line2D . |
void |
setLine(Point2D p1,
Point2D p2)
Sets the location of the endpoints of this Line2D to
the specified Point2D coordinates. |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface java.awt.Shape |
|---|
getBounds2D |
| Constructor Detail |
|---|
protected Line2D()
Line2D.Float
,
Line2D.Double
| Method Detail |
|---|
public abstract double getX1()
Line2D
object's
starting point.public abstract double getY1()
Line2D
object's
starting point.public abstract Point2D getP1()
Point2D
of this
Line2D
.
Point2D
of this
Line2D
.public abstract double getX2()
Line2D
object's
starting point.public abstract double getY2()
Line2D
object's
starting point.public abstract Point2D getP2()
Point2D
of this Line2D
.
Point2D
that is the endpoint of this
Line2D
.public abstract void setLine(double X1, double Y1, double X2, double Y2)
Line2D
to
the specified double coordinates.
X1, Y1
- the first specified coordinateX2, Y2
- the second specified coordinatepublic void setLine(Point2D p1, Point2D p2)
Line2D
to
the specified Point2D
coordinates.
p1, p2
- the specified Point2D
objectspublic void setLine(Line2D l)
Line2D
to
the same as those endpoints of the specified Line2D
.
l
- the specified Line2D
public static int relativeCCW(double X1, double Y1, double X2, double Y2, double PX, double PY)
A return value of 1 indicates that the line segment must turn in the direction that takes the positive X axis towards the negative Y axis. In the default coordinate system used by Java 2D, this direction is counterclockwise.
A return value of -1 indicates that the line segment must turn in the direction that takes the positive X axis towards the positive Y axis. In the default coordinate system, this direction is clockwise.
A return value of 0 indicates that the point lies exactly on the line segment. Note that an indicator value of 0 is rare and not useful for determining colinearity because of floating point rounding issues.
If the point is colinear with the line segment, but not between the endpoints, then the value will be -1 if the point lies "beyond (X1, Y1)" or 1 if the point lies "beyond (X2, Y2)".
X1, Y1
- the coordinates of the beginning of the
specified line segmentX2, Y2
- the coordinates of the end of the specified
line segmentPX, PY
- the coordinates of the specified point to be
compared with the specified line segment
public int relativeCCW(double PX, double PY)
relativeCCW(double, double, double, double, double, double)
to interpret the return value.
PX, PY
- the coordinates of the specified point
to be compared with the current line segment
relativeCCW(double, double, double, double, double, double)
public int relativeCCW(Point2D p)
Point2D
lies with respect to this line segment.
See the method comments of
relativeCCW(double, double, double, double, double, double)
to interpret the return value.
p
- the specified Point2D
to be compared
with the current line segment
Point2D
with respect to the current
line segment.relativeCCW(double, double, double, double, double, double)
public static boolean linesIntersect(double X1, double Y1, double X2, double Y2, double X3, double Y3, double X4, double Y4)
X1, Y1
- the coordinates of the beginning of the first
specified line segmentX2, Y2
- the coordinates of the end of the first
specified line segmentX3, Y3
- the coordinates of the beginning of the second
specified line segmentX4, Y4
- the coordinates of the end of the second
specified line segment
true
if the first specified line segment
and the second specified line segment intersect
each other; false
otherwise.public boolean intersectsLine(double X1, double Y1, double X2, double Y2)
X1, Y1
- the coordinates of the beginning of the
specified line segmentX2, Y2
- the coordinates of the end of the specified
line segment
false
otherwise.public boolean intersectsLine(Line2D l)
l
- the specified Line2D
true
if this line segment and the specified line
segment intersect each other;
false
otherwise.public static double ptSegDistSq(double X1, double Y1, double X2, double Y2, double PX, double PY)
X1, Y1
- the coordinates of the beginning of the
specified line segmentX2, Y2
- the coordinates of the end of the specified
line segmentPX, PY
- the coordinates of the specified point being
measured against the specified line segment
ptLineDistSq(double, double, double, double, double, double)
public static double ptSegDist(double X1, double Y1, double X2, double Y2, double PX, double PY)
X1, Y1
- the coordinates of the beginning of the
specified line segmentX2, Y2
- the coordinates of the end of the specified line
segmentPX, PY
- the coordinates of the specified point being
measured against the specified line segment
ptLineDist(double, double, double, double, double, double)
public double ptSegDistSq(double PX, double PY)
PX, PY
- the coordinates of the specified point being
measured against this line segment
ptLineDistSq(double, double)
public double ptSegDistSq(Point2D pt)
Point2D
to
this line segment.
The distance measured is the distance between the specified
point and the closest point between the current line's endpoints.
If the specified point intersects the line segment in between the
endpoints, this method returns 0.0.
pt
- the specified Point2D
being measured against
this line segment.
Point2D
to the current
line segment.ptLineDistSq(Point2D)
public double ptSegDist(double PX, double PY)
PX, PY
- the coordinates of the specified point
being measured against this line segment
ptLineDist(double, double)
public double ptSegDist(Point2D pt)
Point2D
to this line
segment.
The distance measured is the distance between the specified
point and the closest point between the current line's endpoints.
If the specified point intersects the line segment in between the
endpoints, this method returns 0.0.
pt
- the specified Point2D
being measured
against this line segment
Point2D
to the current line
segment.ptLineDist(Point2D)
public static double ptLineDistSq(double X1, double Y1, double X2, double Y2, double PX, double PY)
X1, Y1
- the coordinates of one point on the
specified lineX2, Y2
- the coordinates of another point on
the specified linePX, PY
- the coordinates of the specified point being
measured against the specified line
ptSegDistSq(double, double, double, double, double, double)
public static double ptLineDist(double X1, double Y1, double X2, double Y2, double PX, double PY)
X1, Y1
- the coordinates of one point on the
specified lineX2, Y2
- the coordinates of another point on the
specified linePX, PY
- the coordinates of the specified point being
measured against the specified line
ptSegDist(double, double, double, double, double, double)
public double ptLineDistSq(double PX, double PY)
Line2D
. If the specified point
intersects the line, this method returns 0.0.
PX, PY
- the coordinates of the specified point being
measured against this line
ptSegDistSq(double, double)
public double ptLineDistSq(Point2D pt)
Point2D
to this line.
The distance measured is the distance between the specified
point and the closest point on the infinitely-extended line
defined by this Line2D
. If the specified point
intersects the line, this method returns 0.0.
pt
- the specified Point2D
being measured
against this line
Point2D
to the current
line.ptSegDistSq(Point2D)
public double ptLineDist(double PX, double PY)
Line2D
. If the specified point
intersects the line, this method returns 0.0.
PX, PY
- the coordinates of the specified point being
measured against this line
ptSegDist(double, double)
public double ptLineDist(Point2D pt)
Point2D
to this line.
The distance measured is the distance between the specified
point and the closest point on the infinitely-extended line
defined by this Line2D
. If the specified point
intersects the line, this method returns 0.0.
pt
- the specified Point2D
being measured
Point2D
to the current line.ptSegDist(Point2D)
public boolean contains(double x, double y)
Line2D
. This method is required to implement the
Shape
interface, but in the case of Line2D
objects it always returns false
since a line contains
no area.
contains
in interface Shape
x, y
- the coordinates of the specified point
false
because a Line2D
contains
no area.public boolean contains(Point2D p)
Point2D
is inside the boundary of
this Line2D
.
This method is required to implement the Shape
interface,
but in the case of Line2D
objects it always returns
false
since a line contains no area.
contains
in interface Shape
p
- the specified Point2D
to be tested
false
because a Line2D
contains
no area.public boolean intersects(double x, double y, double w, double h)
Line2D
intersects the interior of a
specified set of rectangular coordinates.
intersects
in interface Shape
x, y
- the coordinates of the top-left corner of the
specified rectangular areaw
- the width of the specified rectangular areah
- the height of the specified rectangular area
true
if this Line2D
intersects
the interior of the specified set of rectangular
coordinates; false
otherwise.Area
public boolean intersects(Rectangle2D r)
Line2D
intersects the interior of a
specified Rectangle2D
.
intersects
in interface Shape
r
- the specified Rectangle2D
to be tested
true
if this Line2D
intersects
the interior of the specified Rectangle2D
;
false
otherwise.Shape.intersects(double, double, double, double)
public boolean contains(double x, double y, double w, double h)
Line2D
entirely contains
the specified set of rectangular coordinates.
This method is required to implement the Shape
interface,
but in the case of Line2D
objects it always returns
false since a line contains no area.
contains
in interface Shape
x, y
- the coordinates of the top-left corner of the
specified rectangular areaw
- the width of the specified rectangular areah
- the height of the specified rectangular area
false
because a Line2D
contains
no area.Area
,
Shape.intersects(double, double, double, double)
public boolean contains(Rectangle2D r)
Line2D
entirely contains
the specified Rectangle2D
.
This method is required to implement the Shape
interface,
but in the case of Line2D
objects it always returns
false
since a line contains no area.
contains
in interface Shape
r
- the specified Rectangle2D
to be tested
false
because a Line2D
contains
no area.Shape.contains(double, double, double, double)
public Rectangle getBounds()
Line2D
.
getBounds
in interface Shape
Rectangle
that is the bounding box of the
Line2D
.Shape.getBounds2D()
public PathIterator getPathIterator(AffineTransform at)
Line2D
.
The iterator for this class is not multi-threaded safe,
which means that this Line2D
class does not
guarantee that modifications to the geometry of this
Line2D
object do not affect any iterations of that
geometry that are already in process.
getPathIterator
in interface Shape
at
- the specified AffineTransform
PathIterator
that defines the boundary of this
Line2D
.public PathIterator getPathIterator(AffineTransform at, double flatness)
Line2D
.
The iterator for this class is not multi-threaded safe,
which means that this Line2D
class does not
guarantee that modifications to the geometry of this
Line2D
object do not affect any iterations of that
geometry that are already in process.
getPathIterator
in interface Shape
at
- the specified AffineTransform
flatness
- the maximum amount that the control points for a
given curve can vary from colinear before a subdivided
curve is replaced by a straight line connecting the
endpoints. Since a Line2D
object is
always flat, this parameter is ignored.
PathIterator
that defines the boundary of the
flattened Line2D
public Object clone()
clone
in class Object
OutOfMemoryError
- if there is not enough memory.Cloneable
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright © 2004, 2010 Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.


{% load i18n %} {% load static %} {% comment %} The page numbers are sometimes not correct when passed in the views cmd_options. This js-solution is ugly, but seems stable. Also, when including the full css, the footer is not rendered properly, so the relevant styles are defined again. {% endcomment %}


This part of the tutorial is about core JavaScript, the language itself.
But we need a working environment to run our scripts and, since this book is online, the browser is a good choice. We’ll keep the amount of browser-specific commands (like alert
) to a minimum so that you don’t spend time on them if you plan to concentrate on another environment (like Node.js). We’ll focus on JavaScript in the browser in the next part of the tutorial.
So first, let’s see how we attach a script to a webpage. For server-side environments (like Node.js), you can execute the script with a command like "node my.js"
.
JavaScript programs can be inserted almost anywhere into an HTML document using the <script>
tag.
For instance:
```html run height=100 <!DOCTYPE HTML>Before the script…
!/!
…After the script.
```
You can run the example by clicking the "Play" button in the right-top corner of the box above.
The <script>
tag contains JavaScript code which is automatically executed when the browser processes the tag.
The <script>
tag has a few attributes that are rarely used nowadays but can still be found in old code:
type
attribute: <script type=…>
type
. Usually it was type="text/javascript"
. It’s not required anymore. Also, the modern HTML standard totally changed the meaning of this attribute. Now, it can be used for JavaScript modules. But that’s an advanced topic, we’ll talk about modules in another part of the tutorial.
language
attribute: <script language=…>
In really ancient books and guides, you may find comments inside <script>
tags, like this:
html no-beautify <script type="text/javascript"><!-- ... //--></script>
This trick isn’t used in modern JavaScript. These comments hide JavaScript code from old browsers that didn’t know how to process the <script>
tag. Since browsers released in the last 15 years don’t have this issue, this kind of comment can help you identify really old code.
If we have a lot of JavaScript code, we can put it into a separate file.
Script files are attached to HTML with the src
attribute:
Here, /path/to/script.js
is an absolute path to the script from the site root. One can also provide a relative path from the current page. For instance, src="script.js"
would mean a file "script.js"
in the current folder.
We can give a full URL as well. For instance:
To attach several scripts, use multiple tags:
As a rule, only the simplest scripts are put into HTML. More complex ones reside in separate files.
The benefit of a separate file is that the browser will download it and store it in its [cache](https://en.wikipedia.org/wiki/Web_cache).
Other pages that reference the same script will take it from the cache instead of downloading it, so the file is actually downloaded only once.
That reduces traffic and makes pages faster.
```warn header="If
srcis set, the script content is ignored." A single
```
We must choose either an external <script src="…">
or a regular <script>
with code.
The example above can be split into two scripts to work:
````
<script>
tag to add JavaScript code to a page.type
and language
attributes are not required.<script src="path/to/script.js"></script>
.There is much more to learn about browser scripts and their interaction with the webpage. But let’s keep in mind that this part of the tutorial is devoted to the JavaScript language, so we shouldn’t distract ourselves with browser-specific implementations of it. We’ll be using the browser as a way to run JavaScript, which is very convenient for online reading, but only one of many.


Portfolio
Projects
-
Netclips
Online video streaming web application with Netflix-inspired UX.
-
Mini-lennium Falcon
Browser game based off of Flappy Bird and Star Wars.
-
joQuery
A light-weight DOM manipulation library with Snake demonstration.
-
Back end built on Rails and a PostgreSQL database. Frontend created with React, JavaScript, and Redux.
- Built an LRU cache with a doubly‐linked list to reduce number of requests to the server and improve user experience by storing most recently viewed series.
- Created own suggestions engine using Rail’s native ORM framework, ActiveRecord, to make video recommendations unique for each user
- Minimized AJAX requests and number of database queries using React and ActiveRecord
- Designed responsive carousel rows with React components to track which series a user is inspecting


2020 Dodge Challenger 50th Anniversary Edition Limited to 1,960 Units
by Mircea PanaitOldsmobile may have invented the muscle car with the 88, but Pontiac perfected the recipe with the GTO. Not long after these two, Dodge launched the Challenger in the fall of 1969 for the 1970 model year. In other words, the full-size muscle car is celebrating half a century of existence over three generations.
The first needs no introduction, more so if we’re talking about the 426 HEMI and 440 RB engine options. Dodge had less inspiration with the second coming of the Challenger, a badge-engineered Mitsubishi manufactured in Japan with 1.6- and 2.4-liter powerplants featuring four cylinders instead of eight. Fast-forward to the 2006 North American International Auto Show, and the third generation was previewed with retro-infused looks, the silhouette of a notchback coupe, and the 6.1-liter HEMI V8.
For the 2020 model year, Dodge decided to celebrate the legacy of the Challenger with a special edition inspired by the golden age of muscle cars. 50th Anniversary Edition is how it’s called, and only 1,960 will ever be made. For some reason or another, Challenger SRT Hellcat variants can’t be had in this exclusive flavor.
The GT RWD, R/T Shaker, R/T Scat Pack Shaker, and R/T Scat Pack Shaker Widebody are the culprits, each limited to 490 units. By colors, make that 70 for each model in Gold Rush, Frostbite, Sinamon Stick, TorRed, Hellraisin, F8 Green, and Go Mango. Seventy multiplied with seven and four equal 1,960, so there you have it! In regards to pricing, the 50th Anniversary Edition package kicks off at $4,995.
Arriving at U.S. dealerships this spring, this Challenger sticks to its roots with the help of an underhood decal, Satin Black roof and decklid, special badging, Gold School garnish, and Brembo brake calipers in Gunmetal. The interior boasts embroidered 50 logos, Nappa leather and Alcantara suede, Sepia stitching, copper weaving, real carbon fiber, and EVIC animation that showcases the ‘70 Challenger.
The passenger-side air vent displays a serialized plaque that identifies each vehicle as “x out of 70.” Head honcho Tim Kuniskis is very excited about the newcomer, making a case for “big attitude” and “big muscle” just like the Challenger from the good ol’ days. 🏁


{% extends "base.html" %} {% block content %}
You're almost done!
With your help, we would like to examine how users perceive the usability and aesthetics of Many Ideas, so that we can improve the app.
The following word pairs will help you for your assessment. They represent stark contrasts and can be subdivided into further rating levels.
Remember that there are no "right" or "wrong" answers - your personal experience and opinion is what counts.